《数据库系统实现》课程设计报告
请插入自己学校的封面
《数据库系统实现》课程设计报告
目录
一、项目背景概述.............................................................................................................1
1.1、项目内容.............................................................................................................................................. 1
1.2、系统架构.............................................................................................................................................. 1
1.3、角色分工.............................................................................................................................................. 1
二、系统分析与设计........................................................................................................ 1
2.1 、实体分析............................................................................................................................................1
2.2、对图书的分析.....................................................................................................................................1
2.3、对普通用户的分析............................................................................................................................2
2.4、对管理员的分析................................................................................................................................ 2
2.5、对借还书的分析................................................................................................................................ 2
2.6、对入出库的分析................................................................................................................................ 3
三、表示层实现.................................................................................................................3
3.1、总体结构.............................................................................................................................................. 3
3.2、注册与登陆..........................................................................................................................................4
3.3、借书与还书操作................................................................................................................................ 4
3.4、入库与出库操作................................................................................................................................ 7
3.5、添加用户与更改密码.......................................................................................................................7
3.6、查看所有用户借书情况与查看用户信息..................................................................................8
四、控制层实现.............................................................................................................. 10
4.1、用户登录功能(分为管理员和普通用户)...........................................................................10
4.2、注册功能(普通用户)................................................................................................................11
4.3、查看用户功能(管理员权限操作).........................................................................................11
4.4、添加用户功能(管理员权限功能).........................................................................................12
4.5、查看用户借书情况(管理员权限操作)............................................................................... 12
4.6、图书入库与出库(管理员权限操作)....................................................................................13
4.7、管理员权限借书功能(需要输入用户名)...........................................................................14
4.8、还书功能(需要输入用户名)..................................................................................................15
4.9、修改密码(所有使用者(管理员和普通用户))...............................................................16
4.10、查看已经借有的图书(所有使用者(管理员和普通用户)).....................................16
4.11、注销功能......................................................................................................................................... 17
五、数据层实现.............................................................................................................. 17
5.1、图书表.................................................................................................................................................17
5.2、数据库整体编程..............................................................................................................................18
5.3、com.book.model 中类的建立.................................................................................................... 18
5.4、接口建立............................................................................................................................................22
《数据库系统实现》课程设计报告
5.5、com.book.until 中类的建立........................................................................................................ 23
5.6、com.book.impl 中类的建立........................................................................................................ 26
5.7、出入库与修改图书信息的实现..................................................................................................27
5.8、图书状态的判断..............................................................................................................................28
5.9、查询操作............................................................................................................................................32
5.10、用户修改操作................................................................................................................................35
5.11、借阅查询操作................................................................................................................................37
六、项目总结...................................................................................................................39
《数据库系统实现》课程设计报告
一、项目背景概述
1.1、项目内容
围绕中小学(无图书馆)图书管理需求(如采购入库、图书编码、借书还书、
图书出库),设计合理的系统功能模块和数据库结构,构建一个较为实用的图书
管理系统。
1.2、系统架构
整体采用 B/S 架构,使用存储函数来存储数据、采用 JSP+Severlet+Tomcat
的结构、基于 Oracle 数据库、UI 采用 Pintuer 框架开发。
1.3、角色分工
系统分析由团队成员共同讨论完成。
数据层实现由祝登完成。
表示层实现由徐江涛完成。
控制层由郭超辉完成。
二、系统分析与设计
2.1 、实体分析
通过对系统的分析,我们可以知道系统中需要图书、普通用户、管理员三个
实体。所有的设计也都需要围绕他们来进行。并根据这三个实体建立图书表、用
户表(管理员与普通用户均归类到用户表)与借书表。
2.2、对图书的分析
仿照学校图书馆内馆藏图书的信息与操作我们对图书作出以下分析:
1
《数据库系统实现》课程设计报告
图书作为一个实体。为了记录它的信息需要有拟定各种属性。包括:编号、书名、
作者、数量等;
针对图书有入库、出库、借出、归还等操作;
图书在借出时需要记录借书人。出库时该品类所有图书信息都需要删除;
管理员对图书享有一切权力、用户对图书只能借还。
2.3、对普通用户的分析
通过对现实中图书馆普通用户(学生)信息与操作的仿照我们对普通用户做
出如下分析:
对于普通用户只有普通用户名和密码两个属性;
普通用户可以用自己的账号借还图书。且只能给自己借还书。同时普通用户被管
理员管理;
注册时只能注册普通用户身份;
普通用户可以被管理员创建;
普通用户登录密码可由自己或管理员修改。
2.4、对管理员的分析
通过对现实中图书馆管理员(工作人员)信息操作的仿照,我们对管理员做
出如下分析:
管理员拥有用户名与密码属性;
对图书有入库、出库、借出、归还等权限;
管理员可以为自己借书也可以为他人借书;
管理员身份只能通过数据库内置。不能注册获得。
2.5、对借还书的分析
通过对现实中在图书馆借还书时进行操作的仿照,我们对管理员做出如下分
析:
管理员与普通用户都可以自由借还书;
2
《数据库系统实现》课程设计报告
管理员也可为普通用户借书
借书时需要记录借书人账号、书的编号、书名、借书时间;
当书的数量为 0 时。图书被锁定不可借;
同一本书没人每次只能借一本。
2.6、对入出库的分析
通过对现实中图书馆图书管理操作的仿照,我们对管理员做出如下分析:
图书入库时需要记录编号、作者、数量等信息;
相同图书再次入库只增加数量、其他信息不可改变;
图书出库时根据编号。需要对涉及该图书的所有信息进行级联删除;
入库、出库只能由管理员操作。普通用户不具备此权限。
三、表示层实现
表示层主要由 jsp 实现,采用 Pintuer 框架。使 UI 可以有良好的自适应性,
保证可以不同设备的不同屏幕比例之间可以良好显示,方便用户的使用。同时在
用户操作出错时给出相应的提示,是用户可以更好地使用系统。在不同的界面上
通过输入框,输出框等收集输出信息,保证数据完整性。
3.1、总体结构
表示层主要采用 jsp 来编写,基于 Pintuer 架构。具有一定的自适应性。在
各个页面上采集信息后通过表单传递,然后将处理与判断的结果返还回来显示,
并在出现错误时给出相关提示。
总体的上的先进行账号注册,然后登录。登录完成后根据传回的账户信息进
行权限的判断。对拥有权限 1 的管理员账号跳转到管理员界面,使其可以进行图
书入库、出库、借书、还书、查看借书情况、创建新用户等操作。对拥有权限 2
的普通用户跳转到普通用户界面,使其可以完成借书、还书、查看借书、更改密
码情况等操作。
3
《数据库系统实现》课程设计报告
3.2、注册与登陆
拥有账号的用户可以直接在登录界面 login.jsp 输入账号与密码,验证通过
后根据账号权限进入相应界面。账号或密码错误则给出相关提示。没有账号的用
户可以从登录界面点击“注册”按钮跳转到注册界面 registered.jsp 注册完账
号后直接进入普通用户界面(管理员账号不可注册,默认注册成为普通用户)。
3.3、借书与还书操作
管理员借书(lendBook.jsp)时先查询图书,在图书存在的情况下可以点击
借阅,此时需要填写借书账号。所以可以为自己借书也可以为他人借书,图书的
其他信息以及借书时间将由系统自动给出。
4
《数据库系统实现》课程设计报告
普通用户借书(lendBookTwo.jsp)时只需要点击借书即可,图书的其他信
息以及时间将由系统给出,借书人默认为普通用户自己,不可以为他人借书。
与借书相对的管理员还书(returnBook.jsp)时需要填写账号,所以可以为
自己还书也可以为他人还书,图书的其他信息以及还书时间由系统给出。
5