图书馆管理系统登陆界面Word格式文档下载.doc
《图书馆管理系统登陆界面Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《图书馆管理系统登陆界面Word格式文档下载.doc(5页珍藏版)》请在冰豆网上搜索。
/**
*类Login用于显示登录界面,要求系统用户输入正确的用户名和密码。
*
*@authorraymond
*/
publicclassLoginextendsJFrame{
privateJLabellb_user;
privateJTextFieldtf_user;
privateJLabellb_pass;
privateJPasswordFieldpf_pass;
privateJButtonbtn_ok;
privateJButtonbtn_cancel;
privateintnum=0;
//用来记录登陆不成功的次数
publicLogin(){
UIUtil.setUIFont(newFontUIResource("
宋体"
Font.BOLD,15));
initComponents();
}
//初始化组件
privatevoidinitComponents(){
lb_user=newJLabel();
tf_user=newJTextField();
//用户名输入文本框
lb_pass=newJLabel();
pf_pass=newJPasswordField();
//密码输入文本框
btn_ok=newJButton();
//确认按钮
btn_cancel=newJButton();
//取消按钮
setTitle("
用户登录界面"
);
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ContainercontentPane=getContentPane();
contentPane.setLayout(newGridLayout(3,2));
lb_user.setText("
用户名:
"
lb_user.setHorizontalAlignment(SwingConstants.RIGHT);
tf_user.addKeyListener(newKeyEnter());
contentPane.add(lb_user);
contentPane.add(tf_user);
lb_pass.setText("
密码:
lb_pass.setHorizontalAlignment(SwingConstants.RIGHT);
pf_pass.addKeyListener(newKeyEnter());
contentPane.add(lb_pass);
contentPane.add(pf_pass);
btn_ok.setText("
确定"
btn_ok.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEvente){
btn_okActionPerformed(e);
}
});
contentPane.add(btn_ok);
btn_cancel.setText("
取消"
btn_cancel.addActionListener(newActionListener(){
btn_cancelActionPerformed(e);
contentPane.add(btn_cancel);
setSize(225,150);
setLocationRelativeTo(getOwner());
//"
按钮响应事件
privatevoidbtn_okActionPerformed(AWTEvente){
Stringuser=tf_user.getText();
//获得用户名
Stringpass=String.valueOf(pf_pass.getPassword());
//获得密码
Stringusername;
intis_admin;
//未输入用户名
if(user.equals("
)){
JOptionPane.showMessageDialog(this,"
用户名不允许为空!
return;
}
try{
//在数据库中查询
StringsqlStr="
select*fromuserswherename='
+user
+"
'
andpass='
+pass+"
;
ResultSetresult=BaseDao.executeQuery(sqlStr);
if(result.next()){
username=result.getString("
name"
is_admin=result.getInt("
is_admin"
BaseDao.close();
}else{
JOptionPane.showMessageDialog(this,"
用户名或密码不正确!
//当登录不成功次数超过3次,则自动退出
if(num<
3){
num++;
}else{
JOptionPane.showMessageDialog(this,"
尝试次数过多!
this.dispose();
}
return;
GlobalVar.login_user=username;
//记录当前用户
//进入主界面
Mainmain=newMain();
main.setPurView((byte)is_admin);
this.dispose();
}catch(Exceptionex){
System.out.println(ex.getMessage());
privatevoidbtn_cancelActionPerformed(ActionEvente){
this.dispose();
//接受键盘响应事件
privateclassKeyEnterextendsKeyAdapter{
@Override
publicvoidkeyPressed(KeyEvente){
intkeycode=e.getKeyCode();
if(keycode==KeyEvent.VK_ENTER){
publicstaticvoidmain(Stringargs[]){
(newLogin()).setVisible(true);
}
2、界面截图
图1登录界面
图2当输入的用户名为空时,弹出的消息框
图3当输入的用户名或密码不正确时,弹出的消息框
图4当登录不成功次数过多时,弹出的消息框
3、界面描述
(1)界面友好,简单明了
(2)提供了必要的功能
(3)具有较强的容错性
(4)具有较强的安全性
五.实验体会
我觉得系统登录界面的主要突显方面应该是安全性,所以我将界面做的看起来比较简单,但加入了登录的安全机制,例如当登录不成功次数过多时,会自动退出等。