if(rb2[n].isSelected()){
type=n+1;
}
}
userbeanrs=newuserbean();
rs.register(name.getText(),sex,password2.getText(),ID2.getText(),department.getText(),
major.getText(),type);
this.dispose();
}
}//endactionPrformmethod
}//endsystemLoginmethod
登录注册方法:
packagebookDB;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjavax.swing.JOptionPane;
publicclassuserbean{
booleanboolLogin=false;//用户登录之后为true,没登录状态下为false
Stringsql;
StringuserID;
staticStringloginID;//定义登录后的ID
staticintusertype;
Stringusername;
Stringpassword;
Stringsex;
Stringdepartment;
Stringmajor;
intuserType;
intcanBorrow;
ResultSetrs=null;
//******************注册**********************
publicvoidregister(Stringusername,Stringsex,Stringpassword,StringuserID,Stringdepartment,Stringmajor,inttype){
DatabaseConn2DB=newDatabaseConn2();
this.username=username;
this.userID=userID;
this.sex=sex;
this.department=department;
this.major=major;//添加图书时,剩余馆藏量=馆藏量
if(username.equals("")||userID.equals("")||sex.equals("")||department.equals("")||major.equals("")){//提示完善图书信息
JOptionPane.showMessageDialog(null,"请完善信息","错误",JOptionPane.ERROR_MESSAGE);
return;
}else{
//inttype=Integer.parseInt(userType);//转换用户类型为int型
sql="insertintouser(userName,sex,password,userID,department,major,userType)"
+"values('"+username+"','"+sex+"','"+password+"','"+userID+"','"+department+"','"+major+"',"+type+")";
try{
DB.executeUpdate(sql);//更新语句
JOptionPane.showMessageDialog(null,"注册成功您可返回登录");//提示添加成功
//bookMainmain=newbookMain();
RLoginlogin=newRLogin();
login.pack();
login.setVisible(true);
}catch(Exceptione){
System.out.println(e);
JOptionPane.showMessageDialog(null,"保存失败!
","错误",JOptionPane.ERROR_MESSAGE);
}finally{
DB.close();
}
}
}
//*****************登录*****************
publicvoidlogin(StringuserId,Stringpassword1){
DatabaseConn2DB=newDatabaseConn2();
this.userID=userId;
this.password=password1;
if(userID.equals("")||password.equals("")){
JOptionPane.showMessageDialog(null,"请填写完整登录信息!
","错误",JOptionPane.ERROR_MESSAGE);
return;
}else{
sql="select*fromuserwhereuserID='"+userID+"'";
rs=DB.executeQuery(sql);
try{
if(rs.next()){
System.out.println(rs.getString("password"));
if(rs.getString("password").equals(password)){
JOptionPane.showMessageDialog(null,"登录成功!
");
bookMainmain=newbookMain();//登录成功后显示登录页面
main.pack();
main.setVisible(true);
//HttpSessionsession=request.getSession(true);
//session.removeAttribute(logid);
//session.setAttribute(logid,userID);
loginID=userID;//获取登录后的用户ID
//获取用户类型
usertype=Integer.parseInt(rs.getString("userType"));
System.out.println(usertype+"\t"+rs.getString("userType"));
}else{System.out.println("你好");}
}
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
}
主页面:
packagebookDB;
importjava.awt.*;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.*;
publicclassRLoginextendsJFrameimplementsActionListener{
//Containerc;
Stringsex;
inttype;
//创建登录组件
JLabeljlabel0=newJLabel("登录:
");
JLabeljLabel1=newJLabel("学号(或职工号):
");
JLabeljLabel2=newJLabel("密码:
");
JTextFielduserID1=newJTextField(10);
JTextFieldpassword1=newJTextField(10);
JButtonbtn_ok1=newJButton();//创建登录确定按钮
//创建注册组件
JLabeljlabel00=newJLabel("注册:
");
JLabeljLabel3=newJLabel("姓名:
");
JLabeljLabel4=newJLabel("性别:
");
JLabeljLabel5=newJLabel("密码:
");
JLabeljLabel6=newJLabel("学号(或职工号):
");
JLabeljLabel7=newJLabel("院系:
");
JLabeljLabel8=newJLabel("专业:
");
JLabeljLabel9=newJLabel("用户类别:
");
JTextFieldname=newJTextField(10);
JTextFieldpassword2=newJTextField(10);
JTextFieldID2=newJTextField(10);
JTextFielddepartment=newJTextField(10);
JTextFieldmajor=newJTextField(10);
JRadioButtonrb1[];//单选按钮,用于设定性别
JRadioButtonrb2[];//用户类型选择
JButtonbtn_ok2=newJButton();//创建注册确定按钮
//构造函数
publicRLogin()
{
super("登录/注册:
");//调用JFrame的构造函数
String[]sex={"男","女"};
String[]type={"本科生","研究生","老师"};
JPanelpanel1=newJPanel(newFlowLayout());//使用JPanel类创建面板,该类是JComponent类的子类,后者又扩展Container
//每个JPanel都是一个Container,因此,可以向JPanel添加包括面板在内的组件
//this.setBackground(Color.YELLOW);
this.add(panel1);
this.add(panel1,BorderLayout.NORTH);//JFrame类的默认布局管理器为BorderLayout,此处将panel1设置在面板的北侧。
//在panel1面板上添加标签
panel1.add(jlabel0);
panel1.add(jLabel1);
panel1.add(userID1);
panel1.add(jLabel2);
panel1.add(password1);
btn_ok1=newJButton("确定");
btn_ok1.addActionListener(this);
panel1.add(btn_ok1);
JPanelpanel2=newJPanel(newFlowLayout());
this.add(panel2);
this.add(panel2,BorderLayout.CENTER);//JFrame类的默认布局管理器为BorderLayout,此处将panel2设置在面板的南侧。
//在panel2面板上添加组件
panel2.add(jlabel00);
panel2.add(jLabel3);
panel2.add(name);
panel2.add(jLabel4);
//创建ButtonGroup的对象,用于维护单选按钮的逻辑关系
ButtonGroupbg1=newButtonGroup();
rb1=newJRadioButton[sex.length];//单选按钮
for(inti=0;i<2;i++){//
rb1[i]=newJRadioButton(sex[i]);
bg1.add(rb1[i]);//管理单选按钮
panel2.add(rb1[i]);//将单选按钮添加到面
}
panel2.add(jLabel5);
panel2.add(password2);
panel2.add(jLabel6);
panel2.add(ID2);
p