图书管理系统java代码(共43页).doc

上传人:飞****2 文档编号:15135210 上传时间:2022-05-11 格式:DOC 页数:43 大小:306KB
返回 下载 相关 举报
图书管理系统java代码(共43页).doc_第1页
第1页 / 共43页
图书管理系统java代码(共43页).doc_第2页
第2页 / 共43页
点击查看更多>>
资源描述

《图书管理系统java代码(共43页).doc》由会员分享,可在线阅读,更多相关《图书管理系统java代码(共43页).doc(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上 登录/注册(RLogin,userbean)修改个人信息(personInfo,personBean)查看我借的书(mybook,lookMybook)增加图书(bookAdd,bookbean)修改图书信息(bookEdit,bookbean)删除图书(bookDel,bookbean)添加成员(memberAdd,memberBean)删除成员(memberDelete,memberBean)图书借阅(bookLend,bookbean)图书归还(bookReturn,bookbean)图书查询(booksearch,bookbean)组员分工:刘会敏:图书管理

2、(增,删,查询,修改图书信息)方法 及部分页面, 链接数据库(DatabaseConn2) 宁俊明:主界面(bookMain),登录注册界面面板(RLogin), 修改个人信息,添加、删除成员方法王盛开:登录注册方法(userbean),查看我借的书页面,添加删除成员页面,添加删除图书页面图书中心退出 系统操作 主面板bookMain个人信息管理管理图书及成员(当用户类型为管理员时显示此组件)专心-专注-专业项目下的包及类:数据库bookcollection表book(bookID设置为自增)表user表userbook管理图书及成员图书中心退出系统操作个人中心主页面:8删除成员7添加成员设置

3、变量:username,sex,password,userID,userType,department,major向user表插入数据所在院系专业学号密码我是:本科生 研究生 教师6修改图书信息5删除图书4增加图书9.修改个人资料只向管理员显示,判断用户是否为管理员(session)1.查询图书2.借书3.还书姓名:1,2,3,4,5,6对book表进行操作;9 对user表进行操作;10对userbook表进行操作;效果均为点击后出现新的页面验证用户名,密码(from user)注册姓名登录密码:注册:登录:登录/注册:(注册后直接登录,跳转到主页面)10.我所借的书登录注册页面:packa

4、ge bookDB;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;public class RLogin extends JFrame implements ActionListener/Container c; String sex;int type;/ 创建登录组件 JLabel jlabel0 = new JLabel(登录:);JLabel jLabel1 = new JLabel(学号(或职工号):); JLab

5、el jLabel2 = new JLabel(密码:);JTextField userID1 = new JTextField(10); JTextField password1 = new JTextField(10);JButton btn_ok1 = new JButton(); / 创建登录确定按钮/ 创建注册组件 JLabel jlabel00 = new JLabel(注册:);JLabel jLabel3 = new JLabel(姓名:); JLabel jLabel4 = new JLabel(性别:); JLabel jLabel5 = new JLabel(密码:);

6、JLabel jLabel6 = new JLabel(学号(或职工号):); JLabel jLabel7 = new JLabel(院系:); JLabel jLabel8 = new JLabel(专业:);JLabel jLabel9 = new JLabel(用户类别:);JTextField name = new JTextField(10);JTextField password2 = new JTextField(10);JTextField ID2 = new JTextField(10);JTextField department = new JTextField(10);

7、JTextField major = new JTextField(10);JRadioButton rb1; / 单选按钮,用于设定性别JRadioButton rb2;/用户类型选择JButton btn_ok2 = new JButton(); / 创建注册确定按钮/ 构造函数public RLogin() super(登录/注册:); / 调用 JFrame的构造函数String sex = 男, 女 ;String type = 本科生, 研究生, 老师;JPanel panel1 = new JPanel(new FlowLayout();/ 使用JPanel类创建面板,该类是JC

8、omponent类的子类,后者又扩展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(jL

9、abel2);panel1.add(password1);btn_ok1 = new JButton(确定);btn_ok1.addActionListener(this);panel1.add(btn_ok1);JPanel panel2 = new JPanel(new FlowLayout();this.add(panel2);this.add(panel2, BorderLayout.CENTER); / JFrame类的默认布局管理器为BorderLayout,此处将panel2设置在面板的南侧。/ 在panel2面板上添加组件panel2.add(jlabel00);panel2.

10、add(jLabel3);panel2.add(name);panel2.add(jLabel4);/创建ButtonGroup的对象,用于维护单选按钮的逻辑关系ButtonGroup bg1 = new ButtonGroup();rb1 = new JRadioButtonsex.length;/ 单选按钮for (int i = 0; i 2; i+) / rb1i = new JRadioButton(sexi);bg1.add(rb1i);/ 管理单选按钮panel2.add(rb1i); / 将单选按钮添加到面panel2.add(jLabel5);panel2.add(passw

11、ord2);panel2.add(jLabel6);panel2.add(ID2);panel2.add(jLabel7);panel2.add(department);panel2.add(jLabel8);panel2.add(major);panel2.add(jLabel9);/创建ButtonGroup的对象,用于维护单选按钮的逻辑关系ButtonGroup bg2 = new ButtonGroup();rb2 = new JRadioButtontype.length;/ 单选按钮for (int j = 0; j 3; j+) / rb2j = new JRadioButton

12、(typej);bg2.add(rb2j);/ 管理单选按钮,只能选一个panel2.add(rb2j); / 将单选按钮添加到面btn_ok2 = new JButton(确定);btn_ok2.addActionListener(this);panel2.add(btn_ok2);public static void main(String args) RLogin app = new RLogin();app.setSize(600, 200); / 设置窗口大小app.setVisible(true); / 设置窗口可见app.setDefaultCloseOperation(EXIT

13、_ON_CLOSE); / end main methodOverridepublic void actionPerformed(ActionEvent e) / TODO Auto-generated method stub/String sex, type;/ 用户点击登录确定按钮if (e.getSource() = btn_ok1) userbean rs = new userbean(); /System.out.println(userID1.getText() + password1.getText();rs.login(userID1.getText(), password1.

14、getText(); this.dispose();/ 用户点击注册确定按钮if (e.getSource() = btn_ok2) / 获取用户选择的性别并存入sex中for (int m = 0; m rb1.length; m+)if (rb1m.isSelected()sex = rb1m.getText();/ 获取用户选择的类别并存入type中for (int n = 0; n rb2.length; n+)if (rb2n.isSelected()type = n+1;userbean rs = new userbean(); rs.register (name.getText(

15、), sex, password2.getText(), ID2.getText(), department.getText(),major.getText(), type); this.dispose(); / end actionPrform method / end systemLogin method登录注册方法:package bookDB;import java.sql.ResultSet;import java.sql.SQLException;import javax.swing.JOptionPane;public class userbean boolean boolLog

16、in=false;/用户登录之后为true,没登录状态下为falseString sql;String userID;static String loginID;/ 定义登录后的IDstatic int usertype;String username;String password;String sex;String department;String major;int userType;int canBorrow;ResultSet rs = null;/*注册*public void register(String username,String sex,String password

17、,String userID,String department,String major,int type)DatabaseConn2 DB = new DatabaseConn2(); 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.equa

18、ls() /提示完善图书信息JOptionPane.showMessageDialog(null,请完善信息,错误,JOptionPane.ERROR_MESSAGE); return; else/int type = Integer.parseInt(userType);/转换用户类型为int型sql = insert into user(userName,sex,password,userID,department,major,userType)+ values(+username+,+sex+,+password+,+userID+,+department+,+major+,+type+

19、); try DB.executeUpdate(sql); /更新语句 JOptionPane.showMessageDialog(null,注册成功!您可返回登录); /提示添加成功/ bookMain main =new bookMain(); RLogin login = new RLogin(); login.pack(); login.setVisible(true); catch (Exception e) System.out.println(e); JOptionPane.showMessageDialog(null,保存失败!,错误,JOptionPane.ERROR_MES

20、SAGE); finally DB.close(); /*登录*public void login(String userId, String password1)DatabaseConn2 DB = new DatabaseConn2();this.userID = userId;this.password = password1;if(userID.equals() | password.equals()JOptionPane.showMessageDialog(null,请填写完整登录信息!,错误,JOptionPane.ERROR_MESSAGE); return; elsesql =

21、 select * from user where userID = + userID +;rs = DB.executeQuery(sql);try if(rs.next()System.out.println(rs.getString(password);if(rs.getString(password).equals(password) )JOptionPane.showMessageDialog(null,登录成功!);bookMain main = new bookMain();/登录成功后显示登录页面main.pack(); main.setVisible(true);/HttpS

22、ession session = 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);elseSystem.out.println(你好); catch (SQLException e) /

23、 TODO Auto-generated catch blocke.printStackTrace();主页面:package bookDB;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;public class RLogin extends JFrame implements ActionListener/Container c; String sex;int type;/ 创建登录组件 JLabel jlabel0 =

24、 new JLabel(登录:);JLabel jLabel1 = new JLabel(学号(或职工号):); JLabel jLabel2 = new JLabel(密码:);JTextField userID1 = new JTextField(10); JTextField password1 = new JTextField(10);JButton btn_ok1 = new JButton(); / 创建登录确定按钮/ 创建注册组件 JLabel jlabel00 = new JLabel(注册:);JLabel jLabel3 = new JLabel(姓名:); JLabel

25、jLabel4 = new JLabel(性别:); JLabel jLabel5 = new JLabel(密码:); JLabel jLabel6 = new JLabel(学号(或职工号):); JLabel jLabel7 = new JLabel(院系:); JLabel jLabel8 = new JLabel(专业:);JLabel jLabel9 = new JLabel(用户类别:);JTextField name = new JTextField(10);JTextField password2 = new JTextField(10);JTextField ID2 = n

26、ew JTextField(10);JTextField department = new JTextField(10);JTextField major = new JTextField(10);JRadioButton rb1; / 单选按钮,用于设定性别JRadioButton rb2;/用户类型选择JButton btn_ok2 = new JButton(); / 创建注册确定按钮/ 构造函数public RLogin() super(登录/注册:); / 调用 JFrame的构造函数String sex = 男, 女 ;String type = 本科生, 研究生, 老师;JPan

27、el panel1 = new JPanel(new FlowLayout();/ 使用JPanel类创建面板,该类是JComponent类的子类,后者又扩展Container/每个JPanel都是一个Container,因此,可以向JPanel添加包括面板在内的组件/this.setBackground(Color.YELLOW);this.add(panel1);this.add(panel1, BorderLayout.NORTH); / JFrame类的默认布局管理器为BorderLayout,此处将panel1设置在面板的北侧。/ 在panel1面板上添加标签panel1.add(j

28、label0);panel1.add(jLabel1);panel1.add(userID1);panel1.add(jLabel2);panel1.add(password1);btn_ok1 = new JButton(确定);btn_ok1.addActionListener(this);panel1.add(btn_ok1);JPanel panel2 = new JPanel(new FlowLayout();this.add(panel2);this.add(panel2, BorderLayout.CENTER); / JFrame类的默认布局管理器为BorderLayout,此

29、处将panel2设置在面板的南侧。/ 在panel2面板上添加组件panel2.add(jlabel00);panel2.add(jLabel3);panel2.add(name);panel2.add(jLabel4);/创建ButtonGroup的对象,用于维护单选按钮的逻辑关系ButtonGroup bg1 = new ButtonGroup();rb1 = new JRadioButtonsex.length;/ 单选按钮for (int i = 0; i 2; i+) / rb1i = new JRadioButton(sexi);bg1.add(rb1i);/ 管理单选按钮pane

30、l2.add(rb1i); / 将单选按钮添加到面panel2.add(jLabel5);panel2.add(password2);panel2.add(jLabel6);panel2.add(ID2);panel2.add(jLabel7);panel2.add(department);panel2.add(jLabel8);panel2.add(major);panel2.add(jLabel9);/创建ButtonGroup的对象,用于维护单选按钮的逻辑关系ButtonGroup bg2 = new ButtonGroup();rb2 = new JRadioButtontype.le

31、ngth;/ 单选按钮for (int j = 0; j 3; j+) / rb2j = new JRadioButton(typej);bg2.add(rb2j);/ 管理单选按钮,只能选一个panel2.add(rb2j); / 将单选按钮添加到面btn_ok2 = new JButton(确定);btn_ok2.addActionListener(this);panel2.add(btn_ok2);public static void main(String args) RLogin app = new RLogin();app.setSize(600, 200); / 设置窗口大小ap

32、p.setVisible(true); / 设置窗口可见app.setDefaultCloseOperation(EXIT_ON_CLOSE); / end main methodOverridepublic void actionPerformed(ActionEvent e) / TODO Auto-generated method stub/String sex, type;/ 用户点击登录确定按钮if (e.getSource() = btn_ok1) userbean rs = new userbean(); /System.out.println(userID1.getText()

33、 + password1.getText();rs.login(userID1.getText(), password1.getText(); this.dispose();/ 用户点击注册确定按钮if (e.getSource() = btn_ok2) / 获取用户选择的性别并存入sex中for (int m = 0; m rb1.length; m+)if (rb1m.isSelected()sex = rb1m.getText();/ 获取用户选择的类别并存入type中for (int n = 0; n rb2.length; n+)if (rb2n.isSelected()type =

34、 n+1;userbean rs = new userbean(); rs.register (name.getText(), sex, password2.getText(), ID2.getText(), department.getText(),major.getText(), type); this.dispose(); / end actionPrform method / end systemLogin method添加图书:package bookDB;import java.awt.*; import java.awt.event.*;import javax.swing.*;

35、public class bookAdd extends JFrame implements ActionListener/监听机制 Container c; JLabel jLabel1 = new JLabel(图书名);/JLable存放文本或图像 JLabel jLabel2 = new JLabel(数量); JLabel jLabel3 = new JLabel(作者); JLabel jLabel4 = new JLabel(出版社); JTextField bookname = new JTextField(10); /JTextField获取图书名JTextField num

36、ber = new JTextField(10); JTextField author = new JTextField(10); JTextField press = new JTextField(10); JButton addconfirm = new JButton();/JButton按钮 public bookAdd() this.setTitle(增加图书信息); this.setResizable(true); /setResizable(true)窗口大小可调节,false不可调节 tryInit();catch (Exception e)/获取异常e.printStackT

37、race(); public void Init() throws Exception /初始化函数this.setSize(300,500); /设置大小c = this.getContentPane(); /获取内容面板,所有显示在窗口的控件都添加在这个面板上c.setLayout(new FlowLayout(); /布局管理器setLayout() c.add(jLabel1); /向面板添加文字“图书ID:” c.add(bookname); /向面板添加图书名输入框 c.add(jLabel2); /添加图书数量 c.add(number); /向面板添加图书数量输入框c.add(

38、jLabel3); /添加作者 c.add(author);/添加作者输入框 c.add(jLabel4);/添加出版社c.add(press);/添加出版社输入框addconfirm.setText(确认增加); /设置按钮上的字 addconfirm.setFont(new Font(Dialog,0,12);/设置按钮上字体 c.add(addconfirm); /添加按钮 addconfirm.addActionListener(this); /对按钮添加事件监听 public void actionPerformed(ActionEvent e) Object obj = e.get

39、Source();/获得事件监听对象 if(obj = addconfirm) bookBean rs = new bookBean(); int num = Integer.parseInt(number.getText();/将获取的图书数量由String类型转化为整型rs.bookAdd(bookname.getText(),num,author.getText(),press.getText(); this.dispose(); /关闭窗口,并释放窗体资源 修改图书信息:package bookDB;import java.awt.*; import java.awt.event.*;

40、 import javax.swing.*; public class bookEdit extends JFrame implements ActionListener Container c; JLabel jLabel1 = new JLabel(图书ID:);JLabel jLabel2 = new JLabel(图书名:); JLabel jLabel3 = new JLabel(作者:); JLabel jLabel4 = new JLabel(出版社:); JLabel jLabel5 = new JLabel(馆藏量:);JLabel jLabel6 = new JLabel(剩余馆藏量:);JLabel jLabel7 = new JLabel(当前预约人数:);JTextField bookID = new JTextField(10);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁