1、CSDN第五学期项目实训基于Java和SQL Server2008数据库的图书馆管理系统的设计与实现一、项目概述项目实训时间:2013-11-24 至 2013-12-01项目实训要求:利用所学Java知识,SQLSever知识、实现Java的图书馆管理系统的设计与开发: 最终实现的效果图:登录界面 (管理员权限)系统的主界面登录界面(操作员权限)系统的主界面 (管理员权限)管理员界面 (管理员权限)书籍管理界面(管理员权限)图书的类型界面(管理员权限)读书管理界面(管理员权限)借阅信息界面(操作员权限)读书管理界面(操作员权限)借阅信息界面功能模块: 管理员权限的用户可以对所有的数据进行增加
2、数据、更新数据、删除数据的操作,而操作员权限只能对读书管理和借阅信息进行增加数据、更新数据、删除数据的操作,用户可以通过点击添加按钮来进行数据的添加操作,通过选中数据再点击更新按钮来对数据进行更改操作,通过选中数据再点击删除按钮可以对数据进行删除操作。 其中还对数据进行了分页处理,可以通过点击系统下排的按钮进行对应的操作。 下面是对“书籍管理”的操作模块的演示,其他的数据表也可通过类似的方式进行对应的操作:添加操作 更新数据的操作删除数据操作 二、 图书馆管理系统概述图书管理是高校内每一个系部或院部都必须切实面对的工作,但一直以来人们使用传统的人工方式管理图书资料。这种方式存在着许多缺点,如效
3、率低、保密性差且较为繁琐。另外,随着图书资料数量的增加,其工作量也将大大增加,这必将增加图书资料管理者的工作量和劳动强度,这将给图书资料信息的查找、更新和维护都带来了很多困难。经过详细的调查,目前我国各类高等学校中有相当一部分单位图书资料管理还停留在人工管理的基础上。这样的管理机制已经不能适应时代的发展,其管理方法将浪费许多人力和物力。随着科学技术的不断提高,这种传统的手工管理方法必然被以计算机为基础的信息管理方法所取代。图书管理作为计算机应用的一个分支,有着手工管理无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高图书管理的效率。因此
4、,开发一套能够为用户提供充足的信息和快捷的查询手段的图书管理系统,将是非常必要的,也是十分及时的。三、项目需求3.1总体需求根据图书管理的日常工作需求和图书借阅管理流程,系统应实现以下目标: 界面设计友好、美观,数据存储安全、可靠; 基本信息设置保证图书信息和读者信息的分类管理; 实现图书信息的查询功能,保证数据查询的灵活性; 实现对图书借阅、归还过程的全程数据信息跟踪; 提供管理员修改自己密码的功能,保证系统的安全性; 采用人机对话的操作方式,方便管理员的日常操作; 系统最大限度地实现易维护性和易操作性。用例图如下:系统功能模块图如下:3.2图书馆管理系统的数据处理需求分析 通过该系统的实施
5、,将图书馆管理等方面通过系统来实施,其中包括管理员管理(用户、密码、角色),图书信息(图书的基本信息,包括书名、作者、出版社、出版时间、价格、图书类型以及库存数量),图书类型(类型名),读者记录(姓名、学号、电话),借阅记录(包括借阅者的姓名以及所借图书的书名、借书日期、应该归还时间,实际归还时间以及是否归还)等等,来提高学校图书馆运转效率。四、 系统数据库的结构设计4.1逻辑结构设计要点1. 管理员表(admin)列名数据类型允许为空列名idvarchar(50)否idnamevarchar(50)否namepassvarchar(50)否passrolevarchar(50)是role2.
6、 读者表(reader)列名数据类型允许为空idint否namevarchar(50)否novarchar(50)是phonevarchar(50)是3. 图书表(book)列名数据类型允许为空idint否namevarchar(50)否authorvarchar(50)否publishervarchar(50)否publish_timedate是pricefloat是numint是btidint是4. 图书类型(booktype)列名数据类型允许为空idint否namevarchar(50)否5. 借阅表(borrow)列名数据类型允许为空idint否ridint是bidint是borrow
7、_timedate是back_timedate是real_timedate是is_backint是4.2数据库之间的关系图4.3物理结构设计要点本设计系统采用的DBMS为SQL Server,数据库命名:Library.mdb为了方便系统数据的录入和数据完整性,在逻辑设计基础上,增加如下表结构:出版社:记录图书出版社信息。4.4数据结构与程序的关系数据结构与程序是软件的重要组成部分,程序的正确执行依赖于合理的数据结构。五、 项目详细分析与设计5.1登录系统设计5.1.1 程序描述此模块负责用户的登陆,其中可分为管理员登陆与操作员登陆两部分。用户输入用户名密码进行登陆,然后进入其他模块完成相应的
8、动作。当选择管理员身份登陆时可以对所有的数据表进行操作,当以操作员的身份进入时只能对读书管理和借阅信息进行操作。5.1.2功能用户名密码输入:提供输入窗体,进行用户名密码输入;数据查询:根据输入的用户名密码,从数据库进行相应的查询;错误提示:提示用户是否存在和密码是否正确;密码验证:进行用户名密码的验证工作;登陆成功:通过用户名密码验证,进入系统;5.1.3输入项用户名、密码、选择身份信息;5.1.4输出项用户名是否存在提示、用户名密码错误提示、登陆成功提示、请选择身份提示;5.1.5接口管理员信息管理接口、读者信息管理接口、图书信息管理接口、图书借阅接口、图书管理接口;5.1.6存储分配详细
9、见(4.1逻辑结构设计要点:管理员表);5.1.7测试要点数据库连接情况:正常情况,数据库文件缺少,外部系统异常。 系统设置获取:正常情况,外部系统异常。 对用户输入的响应: 合法输入,能够正常调用子模块; 非法输入,系统能否辨别,并作出响应(提出警告); 子模块的异常状况,系统能否及时做出响应。 5.2管理员管理5.2.1程序描述当以管理员的身份进入系统后,可以选择加载数据库中的所有的管理员信息到系统界面(当超过当页显示的总量时进行分页处理)。可以对已有的管理员和操作员的信息进行增、删、改的操作。5.2.2功能功能类型:查询管理员和操作员的基本信息,并进行增、删、改的操作。功能概述:显示查询
10、结果,并进行增、删、改的操作。前提业务:以管理员的身份进入系统5.2.3输出项数据表的id管理员名称管理员密码管理员的类型5.2.3接口与登陆系统相连接5.2.4存储分配详细见(4.1逻辑结构设计要点:管理员表);5.2.5测试计划数据库连接正常 ;添加数据到数据库正常;删除数据库已有的数据正常;更新数据库已有的数据正常;数据库数据正常获得正确的查询结果并显示; 数据库数据异常给出警告; 数据库连接异常给出警告; 5.3图书管理5.3.1程序描述当以管理员的身份进入系统后,可以选择加载数据库中的所有的图书信息到系统界面(当超过当页显示的总量时进行分页处理)。可以对已有的图书的信息进行增、删、改
11、的操作。5.3.2功能功能类型:查询图书的详细信息,并进行增、删、改的操作。功能概述:显示查询结果,并进行增、删、改的操作。前提业务:以管理员的身份进入系统5.2.3输出项数据表的id图书名称图书的作者图书的出版社图书的出版日期图书的价格图书的库存图书的类型名称5.3.3接口与登陆系统相连接5.3.4存储分配详细见(4.1逻辑结构设计要点:图书表);5.3.5测试计划数据库连接正常 ;添加数据到数据库正常;删除数据库已有的数据正常;更新数据库已有的数据正常;数据库数据正常获得正确的查询结果并显示; 数据库数据异常给出警告; 数据库连接异常给出警告; 5.4图书类型管理5.4.1程序描述当以管理
12、员的身份进入系统后,可以选择加载数据库中的所有的图书类型信息到系统界面(当超过当页显示的总量时进行分页处理)。可以对已有的图书的信息进行增、删、改的操作。5.4.2功能功能类型:查询图书类型信息,并进行增、删、改的操作。功能概述:显示查询结果,并进行增、删、改的操作。前提业务:以管理员的身份进入系统5.4.3输出项数据表的id图书类型名称5.4.3接口与登陆系统相连接5.4.4存储分配详细见(4.1逻辑结构设计要点:图书类型表);5.4.5测试计划数据库连接正常 ;添加数据到数据库正常;删除数据库已有的数据正常;更新数据库已有的数据正常;数据库数据正常获得正确的查询结果并显示; 数据库数据异常
13、给出警告; 数据库连接异常给出警告; 5.5读者管理5.5.1程序描述当以管理员的身份进入系统后,可以选择加载数据库中的所有的读者信息到系统界面(当超过当页显示的总量时进行分页处理)。可以对已有的读者的信息进行增、删、改的操作。5.5.2功能功能类型:查询读者信息,并进行增、删、改的操作。功能概述:显示查询结果,并进行增、删、改的操作。前提业务:以管理员的身份进入系统5.5.3输出项数据表的id读者名称读者编号读者的联系方式5.5.3接口与登陆系统相连接5.5.4存储分配详细见(4.1逻辑结构设计要点:读者表);5.5.5测试计划数据库连接正常 ;添加数据到数据库正常;删除数据库已有的数据正常
14、;更新数据库已有的数据正常;数据库数据正常获得正确的查询结果并显示; 数据库数据异常给出警告; 数据库连接异常给出警告; 5.6借阅信息管理5.6.1程序描述当以管理员的身份进入系统后,可以选择加载数据库中的所有的借阅信息到系统界面(当超过当页显示的总量时进行分页处理)。可以对已有的借阅的信息进行增、删、改的操作。5.6.2功能功能类型:查询借阅信息,并进行增、删、改的操作。功能概述:显示查询结果,并进行增、删、改的操作。前提业务:以管理员的身份进入系统5.6.3输出项数据表的id(id)读者的id信息(rid)图书的id信息(bid)借阅时间(borrow_time)还书时间(back_ti
15、me)真实归换时间(real_time)是否归还(is_back)5.6.3接口与登陆系统相连接5.6.4存储分配详细见(4.1逻辑结构设计要点:借阅表);5.6.5测试计划数据库连接正常 ;添加数据到数据库正常;删除数据库已有的数据正常;更新数据库已有的数据正常;数据库数据正常获得正确的查询结果并显示; 数据库数据异常给出警告; 数据库连接异常给出警告;5.7涉及的类图5.7.1实体类图将数据表映射为实体类进行操作,从而实现面向对象的操作。5.7.2DAO与DAO实现类图将操对数据库操作的共同方法封装为一个接口,让所有要操作相同方法的类继承这个接口,从而实现方法规范。5.7.3界面UI类图5.7.4工具类图将数据库的连接以及对数据库操作的方法进行封装,从而实现代码的精简。