1、Java 图书馆管理系统项目系统编程文档题目: 班级: 姓名: 指导老师: 2013 年 6 月 25 日一、功能描述登录模块,读者模块,管理员部分功能程序名称 图书馆管理系统功能描述 实现不同权限用户的登录操作,图书信息的增,删,改,查.读者登录只能查看自己的基本信息,自己借阅的书籍,是否有超期,图书借阅功能,归还功能开发者 王宇航 起止日期 2010-12-22011-1-10记录界面实现效果、实现思想、关键技术、代码优化等方面。1登录模块此登录用户分为两级权限,一个是图书管理员,一个是读者,输入正确的用户名,和密码,选择正确的权限才可以登录,否则失败,当你选择了权限,输入了用户名和密码,
2、获取文本的值,然后再数据库里面找,看是否有符合的记录,如果是图书管理员就进入管理员操作的界面,是读者就进入读者操作界面,需要给确定按钮添加监听,关键代码如下:登录按钮监听 public class BtLoginLis implements ActionListenerpublic String sessionname;Login ln;public BtLoginLis(Login ln1)this.ln=ln1;public void actionPerformed(ActionEvent arg0) String userId=ln.tfUserName.getText().trim()
3、;String pwd=String.valueOf(ln.tfPassword.getPassword().trim();String status=ln.jcb.getSelectedItem().toString().trim();ConnDb db = ConnDb.createInstance();String sql = “select * from s_user where (userid=? and userpwd=?) and userstatus= ?“;trydb.setPs(sql);db.getPs().setString(1, userId);db.getPs().
4、setString(2, pwd);db.getPs().setString(3, status);db.setRs(db.getPs().executeQuery();if(db.getRs().next()ln.setVisible(false);ln.dispose();if(db.getRs().getString(4).trim().equals(“系统管理员“) MainGui1 gui1=new MainGui1();gui1.init1();db.closeAll();else if(db.getRs().getString(4).trim().equals(“图书管理员“)M
5、ainGui2 gui2=new MainGui2();gui2.init2();db.closeAll();else if(db.getRs().getString(4).trim().equals(“读者“)MainGui3 gui3=new MainGui3();gui3.init3();db.closeAll();elseJOptionPane.showMessageDialog(ln,“您的用户名或密码不正确!“,“提示“, JOptionPane. WARNING_MESSAGE);ln.tfUserName.setText(null);ln.tfPassword.setText(
6、null); catch (SQLException e1) e1.printStackTrace();BtLoginLis btlogin=new BtLoginLis(Login.this);btLogin.addActionListener(btlogin);public class readerLis implements ActionListenerReaderinfo r;String id;public readerLis(Readerinfo r1)this.r=r1;public void actionPerformed(ActionEvent arg0) id=r1.ses
7、sionID;ConnDb db = new ConnDb();String sql = “select * from tb_readerinfo where readerID=“+id+“;if(db.query(sql)try r.jtfid.setText(db.getRs().getString(1).trim();r.jtfname.setText(db.getRs().getString(3).trim();r.itfsex.setText(db.getRs().getString(4).trim();r.jtftype.setText(db.getRs().getString(5
8、).trim();r.jtfdep.setText(db.getRs().getString(6).trim();r.jtfclass.setText(db.getRs().getString(7).trim();r.jtftel.setText(db.getRs().getString(8).trim();r.jtfbz.setText(db.getRs().getString(10).trim(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();btSearch.addActionLi
9、stener(new ActionListener()public void actionPerformed(ActionEvent e) / TODO 自动生成方法存根String bid = tfSearch.getText().trim();if(bid.equals(“)JOptionPane.showMessageDialog(null,“请输入要查询的书籍编号“);tfSearch.requestFocus();elseString sql1 = “select * from tb_booknfo where bookId=“+bid+“;JTable table = initTa
10、ble(sql1);c.add(new JScrollPane(table);SelectBook.this.setVisible(true););btSearch1.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e) / TODO 自动生成方法存根String bname = tfSearch1.getText().trim();if(bname.equals(“)JOptionPane.showMessageDialog(null,“请输入要查询的书籍名称“);tfSearch1.
11、requestFocus(true);elseString sql1 = “select * from tb_booknfo where bookName like %“+bname+“%“;JTable table = initTable(sql1);c.add(new JScrollPane(table);SelectBook.this.setVisible(true););:public JTable initTable(String sql)ConnDb db = ConnDb.createInstance();db.query(sql);JTable table = new JTab
12、le(0,10);DefaultTableModel dtm = (DefaultTableModel)table.getModel();dtm.setColumnIdentifiers(new String“借书编号“,“读者卡号“,“图书编号“,“图书名称“,“借书时间“,“操作员“);try db.getRs().beforeFirst();while(db.getRs().next()Object rowData = db.getRs().getString(1),db.getRs().getString(2),db.getRs().getString(3),db.getRs().ge
13、tString(4),db.getRs().getString(5),db.getRs().getString(6);dtm.addRow(rowData); catch (SQLException e1) / TODO 自动生成 catch 块e1.printStackTrace();finallydb.closeAll();return table;三、总结经过一个月 java 图书管理系统的课程设计,我在张老师的细心指导下,顺利完成了该管理系统的课程设计,通过该课程设计,收获很多。1本项目技术的总结:首先关键是学会一些类和方法的使用,其次,要实现外部类的监听,要定义构造函数,实现值的传递
14、, ,比如,图书信息模块下的添加图书信息。GUI 界面的代码可以和监听的代码分开写,这样便于理解和修改。2.对学习课程的总结:首先,让我加深了对 java 语言的理论知识的理解;其次,让我更加熟练的掌握了 java 语言的设计能力并且有了时间经验;再次,再设计过程中,学到了老师没有在课堂上没有教授的知识;最后,加强了我对 java 语言的学习兴趣和好感.。3对专业课知识学习的总结:JAVA 一直是很多人喜爱的一种编程语言,我在张红霞老师的教导下,快乐的学习了这门语言。学习 JAVA 需要多看 SUN 公司提供我们的资料信息,了解常用类的属性和方法。我发现我们有很多同学在用常用类的时候,经常会把类里面的方法和自定义的方法搞混。记得有一位老师说过“学习要抱有一种钻研的态度” 。我对这句话的理解是当我们学习到一个新的知识点的时候,需要不断理解和消化。这可能是一个长期的过程,不能抱有一种急于求成的态度。4职业素养方面的认识以及思想上认识:禁止代码的复制粘贴,最好是自己看懂别人的代码,可以自己构思设计某个思想的实现,这样才有助于提高自己的水平;首先,培养自主学习和分析的能力;其次,与内外保持良好的沟通,永远是成功的保证;再次,要有团队意识,随后,注意代码的规范和文档的规范。