ooks,lib_ret,各个数据表的储存的信息分别为:管理员信息、普通用户信息、书籍信息、书籍外借信息表。
4.1.1 数据库逻辑结构设计
在需求分析阶段已完成该系统所有的数据分析。根据该阶段所建立的概念模型,已经得出满足系统设计要求的几个关系描述,该阶段的主要工作就是把前一阶段的成果转化为具体的数据库。
管理员用户有用户名和密码两个属性,通过这两个属性来确定管理员用户的身份是否合法,其中ID为主键,其E-R图如下:
图4.1 管理员E-R图
学生用户有用户名、密码身份证号、入学年份、性别、所在名称等属性,通过这些属性,来确认学生信息表的信息,其中主键为ID,其E-R图如下:
图4.2 学生用户E-R图
书籍信息表,是用来存储书籍的基本信息,其数星星包括书名、作者名、书籍位置、出版社名称、所属科目、是否借出、最大借阅时间等,其中自动分配的ID和书名作为联合主键,其E-R图如下:
图4.3 书籍信息E-R图
外借书籍信息表是用来存储外借书籍的有关信息,通过此表格,来获取该外借书籍的基本状态,其属性有书籍编号、书籍名、书籍作者、最大外借时间、实际外借时间、外借时间、借阅者ID,其E-R图如下:
图4.4书籍外借信息E-R图
对于各个实体之间的关系E-R图如下:
图 4.5 实体关系图
4.1.2 数据库物理结构设计
依据数据库的原理,并结合以上E-R图,经过转化,即可进行数据库的物理设计。基于以上数据库的逻辑设计,考虑程序设计的简易性,同时考虑题目的时间,该系统的数据库采用Oracle简易版本建立一个数据库,在其下创建4个数据表,其结构分别如下各表:
表4-1 数据表清单
表名 说明 管理员用户表 用于存储管理员信息表格 普通用户表 用于存储普通用户信息表格 书籍信息表 用于存储书籍基本信息表格 书籍外借信息表 用于储存外借书籍的基本信息
表4-2 管理员用户信息表
字段名 数据类型 长度 主键 备注 ID 自动编号 10 是 由数据库sequence自动生成 Adminname Varchar2 50 否 管理员的登录账号 Password Varchar2 50 否 管理员登录的密码
表4-3 普通用户信息表
字段名 数据类型 长度 主键 备注 ID 自动编号 10 是 由数据库sequence自动生成 Username Varchar2 50 否 唯一标识用户,不可缺 Password Varchar2 50 否 普通用户用户登录密码 Indentityid Varchar2 100 否 用户注册的身份证号 Year Varchar2 50 否 用户入学年份 Gender Varchar2 30 否 用户性别 College Varchar2 50 否 用户所在 表4-4 书籍信息表
字段名 数据类型 长度 主键 备注 ID 自动编号 10 联合主键 由数据库sequence自动生成 Bookname Varchar2 50 联合主键 书籍名称 Bookauthor Varchar2 50 否 书籍作者名 Phname Varchar2 50 否 出版社名称 Location Varchar2 60 否 所在位置 Category Varchar2 80 否 所属科目 Status Varchar2 20 否 书籍状态 Renttime Varchar2 20 否 最大借阅时间
表4-5 外借书籍信息表
字段名 数据类型 长度 主键 备注 ID Varchar2 10 是 由数据库自动生成 Book_date Varchar2 50 否 外借时间 Act_ret_date Varchar2 50 否 实际的外借时间 Exp_ret_date Varchar2 50 否 最大的外借时间 Book_id Varchar2 10 否 书籍编号 Bookname Varchar2 50 否 书籍名字 Authorname Varchar2 50 否 书籍作者名 User_id Varchar2 10 否 借阅者id
第5章 模块开发及编码实现
5.1 服务器端的设计---搭建java web服务器
本软件是C/S结构的系统,因此要先搭建服务器端,利用Java EE中的servlet来提供服务,并将其部署在Tomcat下。需要解决的是创建不同的servlet来提供不同的服务。
Web服务的名称:LibraryService
在MyEclipse中新建一个web project,取名为LibraryService,其结构如下图:
图5.1 服务器端代码结构
5.2 连接数据库模块
com.briup.jdbc是CVM模式中的低层,数据库层,包中的类是用来连接数据库和操作数据库的,其中JDBCConnectionFactory.java用来连接数据库的,连接数据库的三个变量为:
private static String url;
private static String userName;
private static String userPwd;
连接数据库需要url,username
上一篇:
在android平台上开发音乐播放器-设计
下一篇:
猪疥癣病的防治