Javaee图书馆管理系统_第1页
Javaee图书馆管理系统_第2页
Javaee图书馆管理系统_第3页
Javaee图书馆管理系统_第4页
Javaee图书馆管理系统_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

常州大学 C H A N G Z H O U U N I V E R S I T Y 实 验 报 告 实验课程名称:实验课程名称: JAVAEEJAVAEE 应用程序开发应用程序开发 本次实验名称为:本次实验名称为: 图书馆管理系统图书馆管理系统 学学 生生 姓姓 名名: 张铭烨张铭烨 班班 级级 中加中加 132132 学学 号号: 学学 院(系):院(系): 国际教育交流学院国际教育交流学院 指指 导导 教教 师师:倪倪彤彤光光 常州大学 目目 录录 1. 实验目的 .3 2. 功能模块图 .3 3 详细设计 .6 3.1 主界面 .6 3.2 读者管理模块功能实现 .6 3.3 书籍管理模块功能实现 .7 3.4 书籍借阅与归还功能实现 .9 4. 数据库设计 .10 4.1 概念结构设计 .10 4.2 逻辑结构设计 .11 4.3 数据库表的建立 .12 5 系统实现.18 5.1. 数据库的连接.18 5.2. 系统功能模块设置.18 结 论 .20 另附:小组成员任务分配 .20 常州大学 1.实验目的 (1)读者身份设置:用于设置不同类型读者所具有的借书权限(借阅数量、续借次数)等; (2)读者信息管理:读者图书证的生成、管理读者信息等; (3)新增图书:图书馆新添图书,为图书入库编号等; (4)图书信息管理:图书基本信息的增删与修改; (5)图书类型管理:图书分类及不同类型图书具有不同的借阅权限(借阅天数); (6)图书借阅:管理读者借书过程; (7)图书过期名单:产看是否有过期图书。 (1)读者信息表,包括:条形码、编号、姓名、性别、类型、出生日期、有效证件、证件号码、 联系方式、登记日期、有效期限、操作员、备注、图书借阅次数、是否挂失等; (2)读者类型表,包括:类型、图书册书。续借次数、限制图书等; (3)新增图书信息表,包括:入库编号、图书编号、订购者、经手者联系方式、定购数量、是否 验收、验收日期、操作员等; (4)书架信息表,包括:书架名、书架类型等; (5)图书类型表,包括:可借天数、图书类型、类型编号等; (6)图书借阅表,包括:借阅编号、读者编号、图书编号、操作时间; (7)图书归还表,包括:故还编号、图书编号、读者编号、归还时间、操作员; 2. 功能模块图 (1)根据上述的功能,可以设计出系统的总体功能模块,如图 3-1 所示。 图书信息管理系统管理员登陆与操作模块 员 工 管 理 读 者 管 理 图 书 信 息 管 理 图 书 借 还 管 理 图 3-1 图书信息管理系统管理员登陆与操作模块功能示意图 (2)“员工管理”功能模块用于增加员工,删除员工,修改员工已有信息,查询已有 员工相关信息。其功能模块如图 3-2 所示。 常州大学 员工管理 增 加 员 工 修 改 员 工 信 息 查 询 员 工 信 息 删 除 员 工 图 3-2 员工管理 (3)“读者管理”功能模块用于新生入校时增加使用本系统的读者信息,以及老生 毕业离校时删除相关读者信息,清楚数据库,查询读者的借阅书籍情况。其功能模块 如图 3-3 所示。 读者管理 添 加 读 者 查 询 读 者 信 息 删 除 读 者 图 3-3 读者管理 (4)“图书信息管理”功能模块用于新书入库,丢失或者陈旧不可用的书籍的出库, 已有书籍的查询。其功能模块如图 3-4 所示。 常州大学 图书信息管理 新 书 入 库 旧 书 出 库 已 有 书 籍 信 息 查 询 图 3-4 图书信息管理 (5)“图书借还管理”功能模块用于读者借书和还书的登记,其其功能模块如图 3-5 所示。 图书借还管理 借 书 管 理 借 还 信 息 查 询 还 书 管 理 图 3-5 图书借还管理 本系统将用户划分为三种类型,即系统管理员、员工和读者。系统管理员为 Admin,他可以管理其他用户和员工的信息,在其他方面的权限相同。 常州大学 3 详细设计详细设计 3.1 主界面 用户登陆系统以后,将出现主界面,用户可以选择要执行的操作,点击即可 实现各功能模块相应的操作,如图 4-1 所示。 图 4-1 主界面 3.2 读者管理模块功能实现 (1)读者添加 功能介绍:添加新的读者,使其能够进入图书系统阅览图书,读者添加如图 4-2 所示。 图 4-2 读者添加 (2)读者修改功能介绍:对读者需要修改的资料进行重定义,读者信息修改如图 4-3 所示。 常州大学 图 4-3 读者信息修改 (3)读者查询 功能介绍:可以对数据库中已有的读者信息进行查询。读者查询如图 4-4 所 示。 图 4-4 读者信息查询 (4)读者删除 功能介绍:删除数据库中已有信息。读者删除如图 4-5 所示。 图 4-5 读者删除 3.3 书籍管理模块功能实现 (1)书入库实现 功能介绍:此界面主要完成的功能是往数据库 book 表中添加新书的记录,在 book 表中可查看最新的记录。在新书信息输入的过程中,会出现一些异常处理, 常州大学 如某个字段的信息没有填写;新书信息输入字段的过程中,输入的字段类型与给 定的字段类型与输入不匹配(如:货币、日期);输入的信息长度超过给定的字 段长度等。如果填写的内容正确则可以成功将新书添加入库,新书入库窗口如图 4-6 所示。 图 4-6 添加新书入库界面 (2)查询功能实现 功能介绍:本系统包含两项一是检索项令一个是检索词,在检索项中用户可 以根据自己的需求来选择所要查询的项目并在检索词中添写自己所要查询的内容。 本系统副带四个按钮:确定、取消、查看全库,该图书馆管理系统的查询界面如 图 4-7 所示。 图 4-7 查询系统界面 在该系统中为了用户使用方便还设有查看全库一项,用户可以通过这一功能来查 看全库的图书,所查询的内容将在下方的文本区中显示,其界面如图 4-8 所示。 图 4-8 查看全库信息 使用检索词必须得满足一定的查询条件才可以执行,用户必须得在检索项中选择 常州大学 查询方式并添好检索词才可查询否则系统会显示未找到您要查找的内容并给以提示, 如图 4-9 所示。 图 4-9 检索 3.4 书籍借阅与归还功能实现 (1)借阅书籍功能实现 输入图书证号“0001”后点击查看按钮,可显示该读者信息,若输入图书证号 错误,点击查看按钮则会弹出借书证错误对话框,如图 4-10 所示。输入图书编号 “”按回车键,可显示该图书信息,若输入图书编号错误,按回车键则会弹出图书 编号错误对话框,如图 4-11 所示。点击借阅按钮则会弹出图书借阅成功对话框。 借阅书籍功能的具体实现如图 4-12 所示。 图 4-10 借书证错误 图 4-11 图书编号错误 常州大学 图 4-12 借阅书籍 (2)归还书籍功能实现 输入图书编号“”点击回车键,则该界面右侧会显示借书者的信息,若图书编 号错误则会弹出图书编号错告对话框,如图 4-13 所示。点击还书按钮会弹出归还 成功对话框。归还书籍功能的具体实现,如图 4-14 所示。 图 4-13 图书编号错误 图 4-14 归还书籍 4. 数据库设计 4.1 概念结构设计 根据需求分析抽象出信息结构,可得该系统的 E-R 图。 用户 E-R 图,如图 4-15 所示。 常州大学 用户 用户名密码用户类型 图 4-15 用户 E-R 图 4.2 逻辑结构设计 根据上述的概念结构设计出逻辑结构,将 E-R 图转换为关系模型。 数据库 Bookmanage 包含以下 5 个表:员工信息表 yuangong、用户信息表 Users、 读者信息表 duzhe、图书信息表 tushu、图书借还信息表 jiehuan。 (1)员工信息表 yuangong 用来保存员工编号,姓名,性别,密码,备注等信息。表 yuangong 的结构如表 4- 1 所示。 表 4-1 员工的结构 编号字段名称数据结构说明 1yidchar记录编号 2ynameVarchar2(30)记录员工姓名 3ysexVarchar(6)记录员工性别 4ybirthdaydate记录员工生日 5ynoteVarchar2(100)记录员工是否迟到或者是否需要删除 6ypasswordchar(6)记录员工登陆系统密码 (2)图书信息表 表 4-2 图书的结构 编号字段名称数据结构说明 1tidchar(6) 记录图书编号 2tnamevarchar2(30)记录图书名称 3tpressvarchar2(30)记录图书出版地址 常州大学 4tpricenumber(5,2)记录图书价格 本系统将用户划分为三种类型,即系统管理员、员工和普通用户。系统管理 员为 Admin,他可以管理其他用户的信息,在其他方面的权限相同。 前面是通过前台来实现系统安全性的,我们也可以对数据库进行身份验证, 可以从服务器角度建一个登录名,使得不同的服务器角色拥有不同的权限,从而 实现对数据库的不同权限的管理,以此来增强图书信息管理系统的安全性。 4.3 数据库表的建立 本次课程设计使用的是 SQL Sever 数据库,可以在新建的 SQL WINDOW 里面创 建表。 (1)创建表 yuangong 创建表 yuangong(员工信息表),它的代码如下: create table yuangong( yid char(5) , yname varchar2(30), ysex varchar2(2), ybirthday date, ypassword char(6), ynote varchar2(100), constraints yuangong_pk primary key (yid) ); insert into yuangong values(00001,张三,男,to_date(1991-01-01,yyyy-mm-dd) , 无); insert into yuangong values(00002,李四,男,to_date(1991-01-01,yyyy-mm-dd) , 无); insert into yuangong values(00003,王二,女,to_date(1991-01-01,yyyy-mm-dd) , 无); insert into yuangong values(00004,刘一,女,to_date(1991-01-01,yyyy-mm-dd) , 无); (2)创建表 tushu 创建表 tushu(图书基本信息表),它的代码如下: 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(,Java 入门教程,高等教育出版社,39,20); insert into tushu values(,数据库,高等教育出版社,39,20); insert into tushu values(,数据结构,高等教育出版社,39,20); insert into tushu values(,数据库系统概论,高等教育出版社,59,20); insert into tushu values(,三国演义,清华出版社,49,20); insert into tushu values(,西游记,高等教育出版社,39,20); insert into tushu values(,C 语言,高等教育出版社,39,20); insert into tushu values(,JAVA 语言,高等教育出版社,39,20); insert into tushu values(,JavaEE 框架,清华出版社,39,20); insert into tushu values(,网页制作,高等教育出版社,39,20); insert into tushu values(,组成原理,高等教育出版社,39,20); insert into tushu values(,操作系统,清华出版社,39,20); (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 varchar2(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 .csuinfo.listener.QuXiaoactionlistener; import .csuinfo.listener.QueDingActionListener; public class FrmDengLu extends JFrame private JPanel contentPane; private JTextField txtYongHuMing; private JPasswordField txtPassWord; /* * 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. */ public 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 u6237 u540D); lblYongHuMing.setBounds(84, 28, 54, 15); contentPane.add(lblYongHuMing); txtYongHuMing = new JTextField(); txtYongHuMing.setBounds(190, 25, 90, 21); contentPane.add(txtYongHuMing); 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(u786E 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 QuXiaoactionlistener (this); 常州大学 public JTextField getTxtYongHuMing() return txtYongHuMing; public JPasswordField getTxtPassWord() return txtPassWord; 程序功能说明:管理员登陆之后进入的系统主界面 程序作者: package .csuinfo.gui; import java.awt.EventQueue; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTabbedPane; import javax.swing.JTable; import javax.swing.JTextField; import javax.swing.ScrollPaneConstants; import javax.swing.border.EmptyBorder; import javax.swing.table.DefaultTableModel; import .csuinfo.listener.ChaZhaojiehuanxingxiactionlistener; import .csuinfo.listener.ChaoZhaoActionListener; import .csuinfo.listener.ChaoZhaoshiyanhuiyuanactionlistener; import .csuinfo.listener.Chaozhaotushuactionlistener; import .csuinfo.listener.ShanChushiyanactionlistener; import .csuinfo.listener.Shanchuhuiyuanactionlistener; import .csuinfo.listener.Shanchutushuactionlistener; import .csuinfo.listener.XinZengshiyanactionlistener; 常州大学 import .csuinfo.listener.XinZengshiyanhuiyuanactionlistener; import .csuinfo.listener.Xingzengshiyantushuactionlistener; import .csuinfo.listener.ZengTainjiehuanxingxiactionlistener; public class FrmGuanLiXiTong extends JFrame 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 String 编 号, 姓 名,性 别, 生 日, 密 码,备 注 ; private String ColumnNames1 = new String 会员编号, 姓 名,性 别, 生 日, 电话 ; private String ColumnNames2 = new String 图书编号, 图书名,出版社, 单价, 数量 ; private String ColumnNames3 = 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 run() 常州大学 try FrmGuanLiXiTong frame = new FrmGuanLiXiTong(); frame.setVisible(true); catch (Exception e) e.printStackTrace();

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论