网站建设资讯

NEWS

网站建设资讯

java简单用户注册代码 java注册功能怎么实现

用java写一个手机商城注册界面代码

这篇文章主要介绍了java通过JFrame做一个登录系统的界面完整代码示例,具有一定借鉴价值,需要的朋友可以参考下。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册网站空间、营销软件、网站建设、旅顺口网站维护、网站推广。

在java的JFrame内通过创建匿名对象的方式做登录界面

package com.sxt;

import java.awt.Container;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPasswordField;

import javax.swing.JTextField;

public class LoginFrame extends JFrame{

JTextField txtname=new JTextField();

JPasswordField txtpass=new JPasswordField();

JButton bl=new JButton("登录");

JButton bg=new JButton("关闭");

//构造无参构造器把主要的方法放在构造器里,然后在main方法里面调

public LoginFrame(){

setBounds(25,25,250,250);

Container c = getContentPane();

c.setLayout(new GridLayout(4,2,10,10));

c.add(new JLabel("用户名"));

c.add(txtname);

c.add(new JLabel("密码"));

c.add(txtpass);

c.add(bl);

c.add(bg);

setDefaultCloseOperation(EXIT_ON_CLOSE);

setVisible(true);

//注意:此处是匿名内部类

bg.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

System.exit(0);

}

}

);

//注意:此处是匿名内部类

bl.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e) {

java注册用户名不能重复代码

首先,我们得明白用户登录使用什么登陆的,即用户在线的原理。这只是将用户的对象存放在了session中而已,然后再frame中进行调用,其他特定页面也进行直接引用就行。那么实现“挤下来”的功能就是让新生成的session有效,让原来存放用户的session失效就行。到此,大体思路已经有了。那怎么实现呢?

想要知道怎么实现,就必须要明白session存放用户对象的过程了。在用户登录之后,我们可以得到用户的对象user,而存放到session中需要执行session.setAttribute(key,value); 我们将用户的userId或是其他的唯一标识存为key,将用户对象存为值。这样就能随时随地调用唯一用户了。user存放的问题解决了,那相同 登录 时session废除的问题呢?

这个其实也不难,我们可以更具session的特性一样,用map进行存贮,将用户的标识存为key,而将其所对应的session存为value,那么当重复用户登录时,只需要取出对应的session,将其invalidate就行了。

至此,实现思路已经明了,聒噪了这么久,大家都急不可耐地想看代码了吧?以下是代码:

前置准备,jsp界面

界面很简单,只是一个简单的登录界面

form action ="%=request.getContextPath()%/UserWXPServlet" method = "post"

用户名šinput type = "text" name = "username"/br/

密码šinput type = "text" name = "password"/br/

input type = "submit" value ="提交"/

/form

成功后跳转页面

欢迎:${sessionScope.user.username}登陆!br/

我这没有写失败页面,大家可以自己写,失败页面也没什么好说的了

entity和登录的实现

user的javabean

private String username;

private String password;

public User() {

}

public User(String user, String password) {

super();

this.username = user;

this.password = password;

}

public String getUsername() {

return username;

}

public void setUsername(String username) {

this.username = username;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

登录user的service实现方法,这里就不写dao和接口了,一切以简单为

public boolean dologin(User user){

Properties pro = new Properties();

InputStream is = UserWXPServlet.class.getClassLoader().getResourceAsStream("user_wxp.properties");

String password = null;

System.out.println(is+"---------"+pro);

if(user==null){

return false;

}

try {

pro.load(is);

password = pro.getProperty(user.getUsername());

if(user.getPassword()!=nulluser.getPassword().equals(password)){

System.out.println("登陆成功");

return true;

}

} catch (IOException e) {

e.printStackTrace();

}finally{

if(is!=null){

try {

is.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

return false;

}

登录成功返回true,失败则返回false。

java编写登陆注册页面(简单一点的,连接数据库)

这是我自己做的一个管理系统的登录界面,代码虽然有点繁琐,不过简单易懂,你根据自己的需要进行修改吧。

import java.awt.Dimension;

import java.awt.GridLayout;

import java.awt.Toolkit;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import javax.swing.JDialog;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JPasswordField;

import javax.swing.JTextField;

/**

*

* @author mzhe

*

*/

class Loginfrm extends JDialog implements ActionListener

{

JLabel l_name,l_pass,l_error;

JTextField t_name;

JButton b_enter,b_cancle,b_clear;

JPanel pan1,pan2,pan3,pan4;

JPasswordField t_pass;

String sname,spass;

int sunit;

NetConn sql;

Statement sqll;

ResultSet rs;

Librarybox lbox;

int until=0;

Loginfrm(JFrame f,String s)

{

//界面布局

super(f,s);

l_name=new JLabel("名字:");

l_pass=new JLabel("密码:");

l_error=new JLabel("请输入用户名和密码登录");

t_name=new JTextField("",10);

t_pass=new JPasswordField("",10);

t_pass.setEchoChar('*');

b_enter=new JButton("确定");

b_enter.addActionListener(this);

b_cancle=new JButton("取消");

b_cancle.addActionListener(this);

b_clear=new JButton("清除");

b_clear.addActionListener(this);

pan1=new JPanel();

pan2=new JPanel();

pan3=new JPanel();

pan4=new JPanel();

pan1.add(l_name);pan1.add(t_name);

pan2.add(l_pass);pan2.add(t_pass);

pan3.add(l_error);

pan4.add(b_enter);pan4.add(b_cancle);pan4.add(b_clear);

setLayout(new GridLayout(4,1));

add(pan1);add(pan2);add(pan3);add(pan4);

//建立数据库连接

sql=new NetConn();

//设置窗口大小

setSize(300,300);

setVisible(false);

//得到屏幕信息以便使框架居中显示

Dimension screeSize = Toolkit.getDefaultToolkit().getScreenSize();

int screeWidth=screeSize.width;

int screeHeight=screeSize.height;

//得到框架的大小信息

Dimension frameSize=this.getSize();

int x=(screeWidth-frameSize.width)/2;

int y=(screeHeight-frameSize.height)/2;

this.setLocation(x, y);

}

public void actionPerformed(ActionEvent e)

{

//单击确定按钮的事件处理程序

if(e.getSource()==b_enter)

{

//如果连续登录次数小于4

if(until=4)

{

//如果用户名或者密码为空,将显示提示信息

if(t_name.getText().equals("")||t_pass.getText().equals(""))

{

l_error.setText("用户名和密码不能为空");

}

else

{

try

{

sqll=sql.connect();

//根据用户名查询

rs=sqll.executeQuery("SELECT * FROM users where username="+"'"+t_name.getText()+"'");

//遍历查询得到的结果集

while(rs.next())

{

sname=rs.getString(2);

spass=rs.getString(3);

//得到登录用户的级别

sunit=Integer.parseInt(rs.getString(4));

//如果密码正确

if(t_pass.getText().equals(spass))

{

//判断用户的级别,根据不同的级别,显示不同的菜单

switch(sunit)

{

case 1:

{

l_error.setText("登录成功");

t_name.setText("");

t_pass.setText("");

lbox=new Librarybox();

lbox.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

lbox.setResizable(false);

lbox.bookfi.setEnabled(true);

lbox.bookse.setEnabled(true);

lbox.bookth.setEnabled(true);

lbox.bookfo.setEnabled(true);

lbox.mi_system_manger.setEnabled(true);

lbox.mi_system_login.setEnabled(false);

lbox.setVisible(true);

this.dispose();

break;

}

case 2:

{

l_error.setText("登录成功");

t_name.setText("");

t_pass.setText("");

lbox=new Librarybox();

lbox.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

lbox.setResizable(false);

lbox.bookfi.setEnabled(false);

lbox.bookse.setEnabled(false);

lbox.bookth.setEnabled(true);

lbox.bookfo.setEnabled(false);

lbox.mi_system_manger.setEnabled(false);

lbox.mi_system_login.setEnabled(false);

lbox.setVisible(true);

this.dispose();

break;

}

case 3:

{

l_error.setText("登录成功");

t_name.setText("");

t_pass.setText("");

lbox=new Librarybox();

lbox.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

lbox.setResizable(false);

lbox.bookfi.setEnabled(true);

lbox.bookse.setEnabled(false);

lbox.bookth.setEnabled(false);

lbox.bookfo.setEnabled(true);

lbox.mi_system_manger.setEnabled(false);

lbox.mi_system_login.setEnabled(false);

lbox.fi_msglabel_user.setEnabled(false);

lbox.setVisible(true);

this.dispose();

break;

}

}

}

else

{

l_error.setText("用户名或密码错误!");

until++;

}

}

}

catch(SQLException e2)

{

e2.printStackTrace();

}

}

}

//超出登录次数

else

{

l_error.setText("你已经超出登录次数");

t_name.setEnabled(false);

t_pass.setEnabled(false);

b_enter.setEnabled(false);

b_clear.setEnabled(false);

}

}

//单击清除按钮的事件处理程序

else if(e.getSource()==b_clear)

{

t_name.setText("");

t_pass.setText("");

l_error.setText("请输入用户名和密码登录");

}

//单击取消按钮的事件处理程序

else if(e.getSource()==b_cancle)

{

dispose();

}

}

}

如果你比较认可的话,请采纳吧,不给分也没关系。只希望对你有用。

如何用Java编写用户注册界面?

界面建议用可视化来做,美观且便捷。下面这个是完全用代码写的,仅供参考。

import javax.swing.*;

import java.awt.event.*;

import java.awt.*;

import java.sql.*;

public class Register extends JFrame {

JLabel jl1 = new JLabel("用户名");

JTextField jt1 = new JTextField();

JLabel jl2 = new JLabel("邮箱");

JTextField jt2 = new JTextField();

JLabel jl3 = new JLabel("密码");

JPasswordField jpw1 = new JPasswordField();

JLabel jl4 = new JLabel("密码确认");

JPasswordField jpw2 = new JPasswordField();

JButton register = new JButton("注册");

JButton clean = new JButton("清空");

public Register(){

setLayout(new GridLayout(5,2));

add(jl1);

add(jt1);

add(jl2);

add(jt2);

add(jl3);

add(jpw1);

add(jl4);

add(jpw2);

add(register);

add(clean);

String name = jt1.getText();

String email = jt2.getText();

String pw = jpw1.getText();

register.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

try{

Class.forName("com.mysql.jdbc.Driver");

Connection con = DriverManager.getConnection("jdbc:mysql://localhost/db","root","");

Statement sta = con.createStatement();

sta.executeUpdate("INSERT INTO register VALUES(name,email,pw)");

JOptionPane.showMessageDialog(null,"注册成功","提示",JOptionPane.INFORMATION_MESSAGE);

}

catch(Exception ex){

ex.getStackTrace();

}

}

});

clean.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

jt1.setText("");

jt2.setText("");

jpw1.setText("");

jpw2.setText("");

}

});

}

public static void main(String[] args){

Register frame = new Register();

frame.setTitle("用户注册");

frame.setLocationRelativeTo(null);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setSize(400,400);

frame.setVisible(true);

}

}

求用java实现简单的登录和注册功能,主要是为了了解怎样对数据库进行增删改查。和各种请求处理,

//User 用户的基本信息,也是USERINFO表中的3个列

package

登陆判断;

public class User {

private String name;

private String loginname;

private String

loginpsw;

public String getName() {

return name;

}

public

void setName(String name) {

this.name = name;

}

public String

getLoginname() {

return loginname;

}

public void

setLoginname(String loginname) {

this.loginname =

loginname;

}

public String getLoginpsw() {

return

loginpsw;

}

public void setLoginpsw(String loginpsw)

{

this.loginpsw = loginpsw;

}

}

//用于注册和登陆的小小代码块

package

登陆判断;

import java.util.Scanner;

public class In {

public static User getUser(){

User u = new User();

Scanner sc =

new

Scanner(System.in);

System.out.println("请输入登陆名");

u.setLoginname(sc.nextLine());

System.out.println("请输入密码");

u.setLoginpsw(sc.nextLine());

return

u;

}

public static User registerUser(){

User u = new

User();

Scanner sc = new

Scanner(System.in);

System.out.println("请注册用户名名");

u.setName(sc.nextLine());

System.out.println("请注册登陆名");

u.setLoginname(sc.nextLine());

System.out.println("请注册密码");

u.setLoginpsw(sc.nextLine());

return

u;

}

}

//登陆时的检查,判断登陆名和密码是否正确,正确则返回 用户名

package 登陆判断;

import java.sql.Connection;

import java.sql.DriverManager;

import

java.sql.PreparedStatement;

import java.sql.ResultSet;

import

java.sql.SQLException;

public class Check {

public static void checkUser(User u)

{

try

{

Class.forName("oracle.jdbc.driver.OracleDriver");

} catch

(ClassNotFoundException e) {

e.printStackTrace();

}

String

url = "jdbc:oracle:thin:@localhost:1521:orcl";

String user =

"scott";

String password = "tiger";

Connection conn =

null;

ResultSet rs = null;

PreparedStatement pst =

null;

String sql = "Select name from USERINFO where loginname = ? and

loginpsw = ? ";

try {

conn = DriverManager.getConnection(url, user,

password);

pst = conn.prepareStatement(sql);

pst.setString(1,

u.getLoginname());

pst.setString(2,u.getLoginpsw());

rs =

pst.executeQuery();

while(rs.next()){

u.setName(rs.getString(1));

}

}

catch (SQLException e) {

e.printStackTrace();

}finally{

try

{

rs.close();

pst.close();

conn.close();

} catch

(SQLException e)

{

e.printStackTrace();

}

}

if(u.getName() == null ||

u.getName().isEmpty()){

System.out.println("登陆失败");

}else{

System.out.println("欢迎"+u.getName()+"登陆");

}

}

}

//注册界面,要判断 登陆名是否有重复,有重复则注册失败。有点小疑问,已用注释标出来

package 登陆判断;

import java.sql.Connection;

import java.sql.DriverManager;

import

java.sql.PreparedStatement;

import java.sql.ResultSet;

import

java.sql.SQLException;

import java.sql.Statement;

public class Register {

public static void registUser(User u){

try

{

Class.forName("oracle.jdbc.driver.OracleDriver");

} catch

(ClassNotFoundException e) {

e.printStackTrace();

}

String

url = "jdbc:oracle:thin:@localhost:1521:orcl";

String user =

"scott";

String password = "tiger";

Connection conn =

null;

String sql = "Insert Into USERINFO

values(?,?,?)";

PreparedStatement pst =

null;

//判断登陆名是否已经存在

Statement s = null;

ResultSet rs =

null;

String sql_ck = "Select LOGINNAME FROM USERINFO";

try

{

conn = DriverManager.getConnection(url, user, password);

pst =

conn.prepareStatement(sql);

pst.setString(1,

u.getName());

pst.setString(2, u.getLoginname());

pst.setString(3,

u.getLoginpsw());

//判断登陆名是否已经存在

s =

conn.createStatement();

rs =

s.executeQuery(sql_ck);

while(rs.next()){//为什么用 rs.getString(2)会提示

无效的索引呢

if( rs.getString("LOGINNAME").equals(u.getLoginname())

){

System.out.println("登陆名已经存在,注册失败");

break;

}else{

pst.executeUpdate();

System.out.println("注册成功");

break;

}

}

}

catch (SQLException e) {

e.printStackTrace();

}finally{

try

{

rs.close();

pst.close();

s.close();

conn.close();

}

catch (SQLException e)

{

e.printStackTrace();

}

}

}

}

//main界面//

//数据库中表的结构式这样

//name(用户名,用于显示),

//loginname(登录名,即登陆时输入的ID)

//loginpsw(登陆时输入的密码)

package

登陆判断;

import java.util.Scanner;

public class Test {

public static void main(String[] args) {

int chos = 0;

Scanner sc = new

Scanner(System.in);

System.out.println("\t\t登陆请按1\t\t注册请按2");

chos =

sc.nextInt();

switch(chos){

case 1:

Check.checkUser(In.getUser());break;

case 2:

Register.registUser(In.registerUser());break;

default:

System.out.println("请输入正确的选择");break;

}

}

}


标题名称:java简单用户注册代码 java注册功能怎么实现
分享URL:http://cdweb.net/article/dossioe.html