《2022年Javaee图书馆管理系统.pdf》由会员分享,可在线阅读,更多相关《2022年Javaee图书馆管理系统.pdf(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Javaee 图书馆管理系统CHANGZHOUUNIVERSITY实验报告实验课程名称 : JAVAEE应用程序开发本次实验名称为 :图书馆管理系统学 生 姓 名: 张铭烨班级中加 132 学 号:13416418 学院( 系): 国际教育交流学院指 导教 师: 倪彤光目录精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统1、 实验目的 . 2 2、 功能模块图 . 2 3 详细设计 . 5 3、1 主界面 . 5 3
2、、2 读者管理模块功能实现. 5 3、3 书籍管理模块功能实现. 7 3、4 书籍借阅与归还功能实现. 8 4、 数据库设计 . 10 4、1 概念结构设计. 10 4、2 逻辑结构设计. 10 4、3 数据库表的建立. 11 5 系统实现 . 17 5、1、 数据库的连接 . 17 5、2、 系统功能模块设置 . 18 结论 . 20 另附: 小组成员任务分配. 20 1、实验目的(1) 读者身份设置 : 用于设置不同类型读者所具有的借书权限( 借阅数量、续借次数) 等; (2) 读者信息管理 : 读者图书证的生成、管理读者信息等; (3) 新增图书 : 图书馆新添图书,为图书入库编号等;
3、(4) 图书信息管理 : 图书基本信息的增删与修改; (5) 图书类型管理 : 图书分类及不同类型图书具有不同的借阅权限( 借阅天数 ); (6) 图书借阅 : 管理读者借书过程; (7) 图书过期名单 : 产瞧就是否有过期图书。(1)读者信息表 ,包括 :条形码、编号、姓名、性别、类型、出生日期、有效证件、证件号码、联系方式、登记日期、有效期限、操作员、备注、图书借阅次数、就是否挂失等; (2)读者类型表 ,包括 :类型、图书册书。续借次数、限制图书等; (3)新增图书信息表,包括 :入库编号、图书编号、订购者、经手者联系方式、定购数量、就是否验收、验收日期、操作员等; (4)书架信息表 ,
4、包括 :书架名、书架类型等; (5)图书类型表 ,包括 :可借天数、图书类型、类型编号等; (6)图书借阅表 ,包括 :借阅编号、读者编号、图书编号、操作时间; (7)图书归还表 ,包括 :故还编号、图书编号、读者编号、归还时间、操作员; 2、 功能模块图(1)根据上述的功能 ,可以设计出系统的总体功能模块,如图 3-1 所示。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统图 3-1 图书信息管理系统管理员登陆与操
5、作模块功能示意图(2)“ 员工管理 ” 功能模块用于增加员工 ,删除员工 ,修改员工已有信息 ,查询已有员工相关信息。其功能模块如图3-2 所示。图 3-2 员工管理(3)“ 读者管理 ” 功能模块用于新生入校时增加使用本系统的读者信息,以及老生毕业离校时删除相关读者信息,清楚数据库 ,查询读者的借阅书籍情况。其功能模块如图3-3 所示。图书信息管理系统 管理员登陆与操作模块员工管理读者管理图书信息管理图书借还管理员工管理增加员工修改员工信息查询员工信息删除员工精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -
6、第 3 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统图 3-3 读者管理(4)“ 图书信息管理 ” 功能模块用于新书入库,丢失或者陈旧不可用的书籍的出库,已有书籍的查询。其功能模块如图3-4 所示。图 3-4 图书信息管理(5)“图书借还管理”功能模块用于读者借书与还书的登记,其其功能模块如图3-5所示。图书信息管理新书入库旧书出库已有书籍信息查询读者管理添加读者查询读者信息删除读者精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 4 页,共 20 页 - - -
7、- - - - - - - Javaee 图书馆管理系统图 3-5 图书借还管理本系统将用户划分为三种类型,即系统管理员、员工与读者。系统管理员为Admin,她可以管理其她用户与员工的信息,在其她方面的权限相同。3 详细设计3、1 主界面用户登陆系统以后,将出现主界面 ,用户可以选择要执行的操作,点击即可实现各功能模块相应的操作 ,如图 4-1 所示。图 4-1 主界面3、2 读者管理模块功能实现(1) 读者添加功能介绍 : 添加新的读者 , 使其能够进入图书系统阅览图书, 读者添加如图4-2所示。图书借还管理借书管理借还信息查询还书管理精品资料 - - - 欢迎下载 - - - - - -
8、- - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统图 4-2 读者添加(2)读者修改功能介绍 : 对读者需要修改的资料进行重定义, 读者信息修改如图4-3所示。图 4-3 读者信息修改(3)读者查询功能介绍 :可以对数据库中已有的读者信息进行查询。读者查询如图4-4 所示。图 4-4 读者信息查询(4)读者删除功能介绍 :删除数据库中已有信息。读者删除如图4-5 所示。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - -
9、 - - - - - - -第 6 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统图 4-5 读者删除3、3 书籍管理模块功能实现(1)书入库实现功能介绍 :此界面主要完成的功能就是往数据库book 表中添加新书的记录 ,在book 表中可查瞧最新的记录。 在新书信息输入的过程中,会出现一些异常处理 ,如某个字段的信息没有填写 ;新书信息输入字段的过程中,输入的字段类型与给定的字段类型与输入不匹配 (如:货币、日期 );输入的信息长度超过给定的字段长度等。如果填写的内容正确则可以成功将新书添加入库,新书入库窗口如图4-6 所示。图 4-6 添加新书入库界
10、面(2)查询功能实现功能介绍 :本系统包含两项一就是检索项令一个就是检索词,在检索项中用户可以根据自己的需求来选择所要查询的项目并在检索词中添写自己所要查询的内容。本系统副带四个按钮 :确定、取消、查瞧全库 ,该图书馆管理系统的查询界面如图4-7所示。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 7 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统图 4-7 查询系统界面在该系统中为了用户使用方便还设有查瞧全库一项,用户可以通过这一功能来查瞧全库的图书 ,所查询的内
11、容将在下方的文本区中显示,其界面如图 4-8 所示。图 4-8 查瞧全库信息使用检索词必须得满足一定的查询条件才可以执行, 用户必须得在检索项中选择查询方式并添好检索词才可查询否则系统会显示未找到您要查找的内容并给以提示,如图 4-9 所示。图4-9 检索3、4 书籍借阅与归还功能实现(1)借阅书籍功能实现输入图书证号 “0001”后点击查瞧按钮 ,可显示该读者信息 ,若输入图书证号错误 ,点击查瞧按钮则会弹出借书证错误对话框,如图 4-10 所示。 输入图书编号 “0000003”按回车键 ,可显示该图书信息 ,若输入图书编号错误,按回车键则会弹出图书编号错误对话框 ,如图 4-11 所示。
12、点击借阅按钮则会弹出图书借阅成功对话框。借阅书籍功能的具体实现如图4-12所示。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 8 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统图 4-10 借书证错误图 4-11 图书编号错误图 4-12 借阅书籍(2)归还书籍功能实现输入图书编号 “0000003”点击回车键 ,则该界面右侧会显示借书者的信息,若图书编号错误则会弹出图书编号错告对话框,如图 4-13 所示。点击还书按钮会弹出归还成功对话框。归还书籍功能的具体实现
13、,如图 4-14 所示。图 4-13 图书编号错误精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 9 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统图 4-14 归还书籍4、 数据库设计4、1 概念结构设计根据需求分析抽象出信息结构,可得该系统的 E-R 图。用户 E-R 图,如图 4-15 所示。图 4-15 用户 E-R 图4、2 逻辑结构设计根据上述的概念结构设计出逻辑结构,将 E-R 图转换为关系模型。数据库 Bookmanage包含以下 5 个表:员工信息
14、表 yuangong、用户信息表 Users、读者信息表 duzhe、图书信息表 tushu、图书借还信息表jiehuan。(1)员工信息表 yuangong 用来保存员工编号 ,姓名,性别,密码,备注等信息。 表 yuangong的结构如表 4-1 所示。表 4-1 员工的结构编号字段名称数据结构说明1 yid char 记录编号用户用户名密码用户类型精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 10 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统2 yname
15、 Varchar2(30) 记录员工姓名3 ysex Varchar(6) 记录员工性别4 ybirthday date 记录员工生日5 ynote Varchar2(100) 记录员工就是否迟到或者就是否需要删除6 ypassword char(6) 记录员工登陆系统密码(2)图书信息表表 4-2 图书的结构编号字段名称数据结构说明1 tid char(6) 记录图书编号2 tname varchar2(30) 记录图书名称3 tpress varchar2(30) 记录图书出版地址4 tprice number(5,2) 记录图书价格本系统将用户划分为三种类型,即系统管理员、员工与普通用户
16、。系统管理员为 Admin,她可以管理其她用户的信息,在其她方面的权限相同。前面就是通过前台来实现系统安全性的,我们也可以对数据库进行身份验证,可以从服务器角度建一个登录名,使得不同的服务器角色拥有不同的权限,从而实现对数据库的不同权限的管理 ,以此来增强图书信息管理系统的安全性。4、3 数据库表的建立本次课程设计使用的就是SQL Sever数据库 ,可以在新建的 SQL WINDOW 里面创建表。(1)创建表 yuangong 创建表 yuangong(员工信息表 ),它的代码如下 : create table yuangong( yid char(5) , yname varchar2(3
17、0), ysex varchar2(2), ybirthday date, ypassword char(6), ynote varchar2(100), 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 11 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统constraints yuangong_pk primary key (yid) ); insert into yuangong values(00001,张三,男,to_date(1991-01-01,yyyy
18、-mm-dd) ,123456, 无); insert into yuangong values(00002,李四,男,to_date(1991-01-01,yyyy-mm-dd) ,123456, 无); insert into yuangong values(00003,王二,女,to_date(1991-01-01,yyyy-mm-dd) ,123456, 无); insert into yuangong values(00004,刘一,女,to_date(1991-01-01,yyyy-mm-dd) ,123456, 无); (2)创建表 tushu 创建表 tushu(图书基本信息表
19、 ),它的代码如下 : create table tushu( tid char(6) primary key, tname varchar2(30), tpress varchar2(30), tprice number(5,2), tcount number(4) ); insert into tushu values(000001,Java 入门教程 ,高等教育出版社 ,39,20); insert into tushu values(000002, 数据库 ,高等教育出版社 ,39,20); insert into tushu values(000003, 数据结构 ,高等教育出版社
20、,39,20); insert into tushu values(000004, 数据库系统概论 ,高等教育出版社 ,59,20); insert into tushu values(000005, 三国演义 ,清华出版社 ,49,20); insert into tushu values(000006, 西游记 ,高等教育出版社 ,39,20); insert into tushu values(000007,C语言,高等教育出版社 ,39,20); insert into tushu values(000008,JA VA 语言 ,高等教育出版社 ,39,20); insert into
21、 tushu values(000009,JavaEE 框架,清华出版社 ,39,20); insert into tushu values(000010, 网页制作 ,高等教育出版社 ,39,20); insert into tushu values(000011, 组成原理 ,高等教育出版社 ,39,20); insert into tushu values(000012, 操作系统 ,清华出版社 ,39,20); 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 12 页,共 20 页 - - - -
22、 - - - - - - Javaee 图书馆管理系统(3)创建关系用户数据表user 创建关系用户数据表user 的代码如下 : create table user( uid char(8) primary key, upassword varchar2(30), unote varchar2(2), ); 创建读者基本信息数据表duzhe创建读者基本信息数据表duzhe的代码如下 :create table duzhe( hid char(8) primary key, hname varchar2(30), hsex varchar2(2), hbirthday date, htel v
23、archar2(11) ); import java、awt、EventQueue; import java、awt、Frame; import javax、swing、JButton; import javax、swing、JFrame; import javax、swing、JLabel; import javax、swing、JPanel; import javax、swing、JPasswordField; import javax、swing、JTextField; import javax、swing、border、EmptyBorder; import cn、com、csuinf
24、o、listener、QuXiaoactionlistener; import cn、com、csuinfo、listener、QueDingActionListener; public class FrmDengLu extends JFrame private JPanel contentPane; private JTextField txtYongHuMing; private JPasswordField txtPassWord; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 13 页,共 2
25、0 页 - - - - - - - - - - Javaee 图书馆管理系统/* * Launch the application、*/ public static void main(String args) EventQueue 、invokeLater(new Runnable() public void run() try FrmDengLu frame = new FrmDengLu(); frame、setVisible(true); catch (Exception e) e、printStackTrace(); ); /* * Create the frame 、*/ publ
26、ic FrmDengLu() setTitle(南华大学图书信息管理系统); setDefaultCloseOperation(JFrame 、EXIT_ON_CLOSE); setBounds(100, 100, 374, 183); contentPane = new JPanel(); contentPane 、setBorder(new EmptyBorder(5, 5, 5, 5); setContentPane(contentPane); contentPane 、setLayout(null); JLabel lblYongHuMing = new JLabel(u7528 u6
27、237 u540D); lblYongHuMing 、setBounds(84, 28, 54, 15); contentPane 、add(lblYongHuMing); txtYongHuMing = new JTextField(); txtYongHuMing 、setBounds(190, 25, 90, 21); contentPane 、add(txtYongHuMing); 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 14 页,共 20 页 - - - - - - - - - - Ja
28、vaee 图书馆管理系统txtYongHuMing 、setColumns(10); JLabel lblKouLing = new JLabel(u53E3 u4EE4); lblKouLing 、setBounds(84, 58, 54, 15); contentPane 、add(lblKouLing); txtPassWord = new JPasswordField(); txtPassWord 、setBounds(190, 55, 90, 21); contentPane 、add(txtPassWord); JButton btnQueDing = new JButton(u7
29、86E u5B9A); btnQueDing、setBounds(91, 118, 77, 23); contentPane 、add(btnQueDing); btnQueDing、addActionListener(new QueDingActionListener(this); JButton btnQuXiao = new JButton(u53D6 u6D88); btnQuXiao、setBounds(200, 118, 93, 23); contentPane 、add(btnQuXiao); btnQuXiao、addActionListener(new QuXiaoactio
30、nlistener (this); public JTextField getTxtYongHuMing() return txtYongHuMing; public JPasswordField getTxtPassWord() return txtPassWord; 程序功能说明 :管理员登陆之后进入的系统主界面程序作者 : package cn 、com、csuinfo、gui; import java、awt、EventQueue; import java、awt、event、ActionEvent; import java、awt、event、ActionListener; impo
31、rt javax、swing、JButton; import javax、swing、JFrame; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 15 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统import javax、swing、JLabel; import javax、swing、JPanel; import javax、swing、JScrollPane; import javax、swing、JTabbedPane; import javax、swi
32、ng、JTable; import javax、swing、JTextField; import javax、swing、ScrollPaneConstants; import javax、swing、border、EmptyBorder; import javax、swing、table、DefaultTableModel; import cn、com、csuinfo、listener、ChaZhaojiehuanxingxiactionlistener; import cn、com、csuinfo、listener、ChaoZhaoActionListener; import cn、com
33、、csuinfo、listener、ChaoZhaoshiyanhuiyuanactionlistener; import cn、com、csuinfo、listener、Chaozhaotushuactionlistener; import cn、com、csuinfo、listener、ShanChushiyanactionlistener; import cn、com、csuinfo、listener、Shanchuhuiyuanactionlistener; import cn、com、csuinfo、listener、Shanchutushuactionlistener; impor
34、t cn、com、csuinfo、listener、XinZengshiyanactionlistener; import cn、com、csuinfo、listener、XinZengshiyanhuiyuanactionlistener; import cn、com、csuinfo、listener、Xingzengshiyantushuactionlistener; import cn、com、csuinfo、listener、ZengTainjiehuanxingxiactionlistener; public class FrmGuanLiXiTong extends JFrame
35、private JPanel contentPane; private JTable tableYuanGong; private JTable tableHuiYuan; private JTable tableTuShu; private JTable tableJieHuanXinXi; private JTextField textHuiYuanBianHaoj; private JTextField TxtYuanGongBianHao; private JTextField TxtYuanGongXingMing; private String ColumnNames = new
36、String 编号, 姓名,性 别, 生日, 密 码,备 注 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 16 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统; private String ColumnNames1 = new String 会员编号 , 姓名,性 别, 生日, 电话 ; private String ColumnNames2 = new String 图书编号 , 图书名 ,出版社 , 单价, 数量 ; private String Colu
37、mnNames3 = new String 图书编号 , 图书名 ,出版社 , 单价 ,借书日期 ,还书日期 ,就是否归还 ; private JTextField textHuiYuanBianHao; private JTextField textHuiYuanXingMing; private JTextField texttushuchazhao; /* *Launch the application、*/ public static void main(String args) EventQueue 、invokeLater(new Runnable() public void ru
38、n() try FrmGuanLiXiTong frame = new FrmGuanLiXiTong(); frame、setVisible(true); catch (Exception e) e、printStackTrace(); ); 5 系统实现5、1、 数据库的连接/获取与数据库之间的连接精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 17 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统String user = scott; String dbpas
39、sword = tiger; String url = jdbc:oracle:thin:localhost:1521:student; conn = DriverManager、getConnection (url, user, dbpassword); /创建发送 sql语句的 Statement 对象st = conn、createStatement(); /发送sql语句,并用ResultSet 类型的对象保存查询的数据行5、2、 系统功能模块设置在该系统中设置管理员登陆后进入的界面如下图所示: 图 5-1 员工管理框架图 5-2 读者管理界面精品资料 - - - 欢迎下载 - - -
40、 - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 18 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统图 5-3 图书管理界面图 5-4 图书借还信息管理界面精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 19 页,共 20 页 - - - - - - - - - - Javaee 图书馆管理系统结论在这次课程设计中我们努力完成了任务,共同学习知识 ,感到非常高兴。在这次课设中我不仅学到了知识,真正体会到了小组合作精神的
41、重要性,这对我以后的工作有很大的帮助。在程序中我们主要用了awt 包与 swing 包,界面排版主要用轻量级容器box来实现 ,页面位置、大小就是通过设置setbounds来控制的。不但成功的连接了数据库,也成功实现了很多功能 :在管理员方面实现了管理员登陆、管理员添加、管理员删除三个功能 ,在读者管理方面实现了读者添加、读者修改、读者查询、读者删除四个功能 ,在书籍管理方面实现了新书入库、书籍查询两个功能,在书籍借阅与归还方面实现了借阅书籍、归还书籍两个功能,在借阅超时方面也成功实现了此功能。我们应该从这次课程设计中所暴露出的问题入手,不断完善自己的欠缺与不足。相信此次课程设计为我们以后继续从事计算机工作打下了扎实的基础,也明确了以后的学习方向。另附: 小组成员任务分配1.张铭烨1) 业务逻辑层代码调试与修改; 2) 图书馆管理项目编写2.严旭: 1) 数据库设计 ; 2)数据访问层代码调试与修改; 3)项目说明书校对与修改 ; 3.刘超: 1)视图层代码编写2)jsp 、js 、css 代码修改与编写 ; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 20 页,共 20 页 - - - - - - - - - -
限制150内