图书管理系统设计与实现

上传人:aa****6 文档编号:29987839 上传时间:2018-01-26 格式:DOC 页数:124 大小:940.50KB
返回 下载 相关 举报
图书管理系统设计与实现_第1页
第1页 / 共124页
图书管理系统设计与实现_第2页
第2页 / 共124页
图书管理系统设计与实现_第3页
第3页 / 共124页
图书管理系统设计与实现_第4页
第4页 / 共124页
图书管理系统设计与实现_第5页
第5页 / 共124页
点击查看更多>>
资源描述

《图书管理系统设计与实现》由会员分享,可在线阅读,更多相关《图书管理系统设计与实现(124页珍藏版)》请在金锄头文库上搜索。

1、图书管理系统设计与实现【摘要】【关键字】要求 4 或 5 个Package:用于软件的打包extends:使子类继承超类implements:使类实现接口break:终止程序的进行【正文】一、系统分析1、 图书管理系统功能需求分析图书管理系统用例图如下所示书 书 书书 书 书 书书 书书 书 书 书书 书 书 书书 书 书 书2、 基础维护子模块功能需求分析基础维护子模块用例图如下所示书 书 书书 书 书 书 书 书书 书 书 书 书 书(1) 图书信息管理子模块功能需求分析图书信息管理子模块用例图如下所示书 书 书书 书 书 书 书 书书 书 书 书 书 书书 书 书 书 书 书(2) 读者

2、信息管理子模块功能需求分析读者信息管理子模块用例图如下所示书 书 书书 书 书 书 书 书书 书 书 书 书 书书 书 书 书 书 书3、 借阅管理子模块功能需求分析借阅管理子模块用例图如下所示书 书 书书 书 书 书书 书 书 书4、 查询管理子模块功能需求分析查询管理子模块用例图如下所示书 书书 书 书 书书 书 书 书5、 系统管理子模块功能需求分析系统管理子模块用例图如下所示书 书书 书 书 书二、系统设计1、 结构功能各个功能模块所包含子模块及主要功能: 基础维护: 借阅管理: 查询管理: 系统管理: 2、系统流程图图书管理系统基础维护 基础维护 基础维护 基础维护图书信息维护读者信

3、息维护图书借阅图书归还图书信息查询读者信息查询密码修改退出系统图书信息添加图书信息修改图书信息删除读者信息添加读者信息修改读者信息删除系统登录管理员?显示读者界面 显示管理员界面退出系统N Y3、搭建开发环境本项目的主要开发环境:Windows XP+JDK 6.0+Eclipse 3.6+MySQL 5.0辅助开发工具:ProwerDesigner 15、Navicat for MySQL 。 JDK 6.0: Eclipse 3.6: MySQL 5.0: ProwerDesigner 15: Navicat for MySQL:【任务 2】搭建系统开发环境。4、规划创建系统目录 Src

4、目录:主要用于存放系统的所有源代码。源代码文件按包结构进行组织。 data(数据)包:用于存放数据库操作类。 entity(实体)包:用于存放系统的实体类,包括图书、用户等实体。 util(通用)包:用于存放系统的实用工具类,为其他包共用。 window(窗口)包:用于存放系统的图形界面窗口类。【任务 3】创建系统目录三、数据库设计本系统采用 MySQL 数据库管理系统。在对系统进行需求分析、系统总体设计的基础上,设计出本系统的物理数据模型,主要包括 4 个表:图书信息表(book) 、读者信息表(reader ) 、借阅信息表(borrow )和用户信息表(user ) 。表 1 图书信息表

5、(book)字段名 数据类型(精度) 空/非空 pk(主键) 说明id varchar(32) no null 图书编号name varchar(100) null 图书名称type varchar(50) null 图书类别author varchar(50) null 作者translator varchar(50) null 译者publisher varchar(1024) null 出版社publish_time date null 出版时间stock int(11) null 库存数量price double null 价格表 2 读者信息表(reader)字段名 数据类型(精度)

6、 空/非空 pk(主键) 说明id varchar(32) no null 读者编号name varchar(50) null 读者姓名type varchar(20) null 读者类别sex char(2) null 读者性别max_num int(3) null 最大可借数days_num int(11) null 可借天数表 3 借阅信息表(borrow)字段名 数据类型(精度) 空/非空 pk(主键) 说明id int(11) no null 借阅流水号book_id varchar(50) null 图书编号reader_id varchar(50) null 读者编号borrow

7、_date date null 借出时间back_date date null 到期时间is_back smallint(1) null 是否归还表 4 用户信息表(user )字段名 数据类型(精度) 空/非空 PK(主键) 说明id int(11) No null 用户流水号Name varchar(50) null 用户名称Pass varchar(50) null 用户密码Is_admin smallint(1) null 是否为管理员1、建立系统物理数据模型使用 ProwerDesigner 软件创建系统物理数据模型。本系统物理数据模型如图 4 所示。按照下述方法设计这 4 个表。u

8、seridnamepassis_admin.int(11)varchar(50)varchar(50)smallint(1)bookidnametypeauthortranslatorpublisherpublish_timestockprice.varchar(32)varchar(100)varchar(50)varchar(50)varchar(50)varchar(1024)dateint(11)doublereaderidnametypesexmax_numdays_num.varchar(32)varchar(50)varchar(20)char(2)int(3)int(11)bo

9、rrowidbook_idreader_idborrow_dateback_dateis_back.int(11)varchar(50)varchar(50)datedatesmallint(1)2、根据物理数据模型生成 SQL 语句利用设计的物理数据模型生成 SQL 语句,便于创建数据库。【任务 4】建立本系统物理数据模型,并生成相应的 SQL语句。(1)建立本系统物理数据模型创建步骤:1) 安装,并启动 ProwerDesigner 软件。2) 单击 filenew mode选中 Physical Data Model输入模型名称:PhysicalDataModel_ts.pdm选中 DB

10、MS:MySQL 5.0单击 “OK”3) 在 Palette 工具中,选中 table在工作区创建 4 个表双击其中的一个表输入表名单击 Columns 选项卡输入字段及其类型 设置主键应用确定4) 保存(2)生成相应的 SQL 语句步骤:单击“Database”Generate Database设置保存相应的路径输入文件名为:ts.sql其余默认确定用记事本打开 ts.sql 文件,可以看到创建表的 SQL 命令。3、根据生成的 SQL 语句,创建数据表MySQLl 是一个服务器程序。要想建立表就需要使用管理工具,借助管理工具可以很方便地对 MySQL 进行操作。管理工具有很多,这里介绍一

11、个第三方的管理工具 Navicat for MySQL。下载 navicat8_mysql_cs.exe 安装。它是正式版本,只能免费使用 30 天。Navicat for MySQL 是客户端的管理程序,并不是 MySQL。要想操作必须连接MySQL。【任务 5】根据生产的 SQL 语句文件,创建数据表。根据生成的 SQL 语句,创建数据表的操作步骤如下:1) 启动 Navicat for MySQL。2) 创建连接:单击“连接”设置连接的名称:zzl_mysql(可自定) 输入 MySQL的设置密码单击“连接测试”按钮出现“连接成功”信息后,按“确定” 。如图 5 所示。图 5 设置与 M

12、ySQL 的连接3) 打开连接:右击刚刚建立的连接单击“打开连接”4) 创建数据库:右击刚刚建立的连接单击“创建数据库”输入数据库名称:ts选取字符集:GBK整理:确定注意:字符集的选取,为了中文不是乱码。5) 打开数据库:右击 ts 数据库 单击“打开数据库”6) 根据 SQL 语句创建表文件 :创建查询单击“文件”单击“载入”选择载入的文件,并打开单击“运行”按钮。4、创建实体类为了便于对数据表进行控制,应该为项目中的每一个数据库表创建一个独立的实体类。类的成员变量对应数据库表的字段(列) ,成员方法对应成员变量和对表的操作。这样,可以向操作类一样来操作数据库表。【任务 6】在 entit

13、y 包中创建实体类。在这里需要创建 3 个实体类: Reader:6 个成员变量及相应的 Setter 和 Getter 方法。 Borrow:6 个成员变量及相应的 Setter 和 Getter 方法。 Book:9 个成员变量及相应的 Setter 和 Getter 方法(1)Reader 类Reader 类用于对数据库表 reader 进行操作,其定义如下:package entity;public class Reader private String id; / 读者编号private String name; / 读者姓名private String type; / 读者类别pr

14、ivate String sex; / 性别private String max_num; / 最多可借数量private int days_num; / 最大可借天数/* return the id*/public String getId() return id;/* param id* the id to set*/public void setId(String id) this.id = id;/* return the name*/public String getName() return name;/* param name* the name to set*/public v

15、oid setName(String name) this.name = name;/* return the type*/public String getType() return type;/* param type* the type to set*/public void setType(String type) this.type = type;/* return the sex*/public String getSex() return sex;/* param sex* the sex to set*/public void setSex(String sex) this.sex = sex;/* return the max_num*/public String getMax_num() return max_num;/* param max_num* the max_num to set*/public void setMax_num(String max_num) this.max_num = max_num;/* return the days_num*/public int getDays_num() return days_num;/* par

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

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号