图书管理系统详细设计文档格式.docx
- 文档编号:18494020
- 上传时间:2022-12-17
- 格式:DOCX
- 页数:19
- 大小:102.86KB
图书管理系统详细设计文档格式.docx
《图书管理系统详细设计文档格式.docx》由会员分享,可在线阅读,更多相关《图书管理系统详细设计文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
-系统详细设计简述
-各个模块的三层划分
-最小模块组件的伪代码
本文档的预期的读者是:
●开发人员
●项目管理人员
●测试人员
1.2范围
该文档定义了系统的各个模块和模块接口,但未确定单元的具体实现,这部分内容将在实现中确定。
1.3缩写说明
JSP
JavaServerPage(Java服务器页面)的缩写,一个脚本化的语言。
MVC
Model-View-Control(模式-视图-控制)的缩写,表示一个三层的结构体系。
1.4术语定义
Struct:
一种框架体系结构。
1.5引用标准
[1]《企业文档格式标准》V1.1
北京长江软件有限公司
[2]《软件详细设计报告格式标准》V1.1
北京长江软件有限公司软件工程过程化组织
1.6参考资料
[1]《软件工程案例教程软件项目开发实践》第二版韩万江姜立新等编著机械工业出版社
1.7版本更新信息
本文档版本更新记录如表C-1:
表C-1版本更新记录
修改编号
修改日期
修改后版本
修改位置
修改内容概述
000
2012.10.1
1.0
全部
初始发布版本
2系统设计概述
根据《图书管理系统》的概要设计,本系统按照功能角度分解,可以分为用户端子系统和管理端子系统。
根据页面流的设计,图书管理端子系统、系统管理端子系统、用户端子系统、的关系如图C-1,以下将分小节对各个部分分别进行详细设计。
3详细设计概述
由于本系统采用了基于Structs体系结构的设计,即采用MVC的三层设计模式,采用面向对象的Java语言以及JSP的脚本语言。
所以基本采用面向对象的设计方法。
在整个的开发过程中,尽可能采用复用的原则,例如采用标签库,统一数据库的基本操作,统一结果显示等。
本文档的详细设计主要是按照Structs的MVC的三个层次分别编制视图层、控制层和模型层模块的伪代码。
为下一步的编码提供基础。
伪代码(Pseudocode)是一种算法描述语言。
使用伪代码的目的是为了使被描述的算法可以容易地以任何一种编程语言实现。
因此,伪代码必须结构清晰,代码简单,可读性好,并且类似自然语言。
4登录管理模块的详细设计
登录管理模块主要负责用户和管理员的登录,系统框架可分成三层结构,即视图层、控制层和模型层三个层次的模块如表C-2所示。
视图
控制器
模型
login.jsp
main.jsp
LoginForm
LoginAction
DB.java
Constants.java
User.java
表C-2:
登录管理的三层模块
4.1视图层
根据上述的功能介绍,视图页面设计如表C-3所示。
界面
功能描述
登陆界面
登录的主页面
主页面1
main1.jsp
读者的主页面
主页面2
main2.jsp
图书管理员的主页面
主页面3
main3.jsp
系统管理员的主页面
页面上端
top.jsp
复用页面:
首页面上部分
页面下端
bottom.jsp
首页面下部分
页面左端
left.jsp
首页面左部分
表C-3:
登录管理模块的页面设计
根据界面流的设计可以确定各个界面的访问入口以及界面之间的切换关系,页面流程如图C-2所示。
表C-4:
登录管理的页面流程图
4.2控制层
登录管理的控制层主要是设计用户的登录事件(Action)的流程控制。
表C-4列出了每个Action的入口(即调用Action的组件)、传递Action的ActionForm以及出口(即Action将请求转发到目标组件)。
事件
Action
入口
ActionForm
出口
用户登录
Login.jsp
图C-5登陆管理的控制层设计
4.3模型层
登录管理的模型组件负责完成用户信息的数据库操作的业务逻辑模型,建立封装了用户信息的bean,这个bean主要验证用户相关信息是否存在,并判断其权限。
模型组件如表C-6所示。
模型组件
描述
封装数据库操作的bean
UserBean.java
封装用户信息的bean
图C-6登陆管理的模型组件
5读者管理模块的详细设计
读者管理主要是进行图书检索、图书信息查询、图书预约、逾期缴款、历史记录、期刊推荐、我的书架、个人信息修改等操作。
读者管理的Structs视图层、控制层和模型层三个层次的模块如表C-7所示。
checkbook.jsp
booknews.jsp
bookorder.jsp
delayfee.jsp
history.jsp
journal.jsp
mybookself.jsp
update.jsp
ReaderForm
ReaderAction
DAO层
业务逻辑层
实体
Reader.java
表C-7:
读者管理模块的三层模块
5.1视图层
根据上述的功能介绍,总结出读者管理功能的页面设计如表C-8所示。
读者管理首页
reader.jsp
读者的首页
图书检索页面
检索图书
查看图书信息页面
查询图书的作者、出版社等
预定图书页面
预定图书
逾期缴款页面
逾期缴款
历史记录页面
查询借过的书,未还的书等
期刊推荐页面
期刊推荐
我的书架页面
我喜欢的书,我的收藏等
修改个人信息页面
修改个人信息
表C-8:
读者管理模块的页面设计
读者管理模块各个表示页面之间的关系如图C-9所示。
5.2控制层
读者管理控制层主要负责进入图书检索页面、图书信息查询页面、图书预约页面、逾期缴款页面、历史记录页面、期刊推荐页面、我的书架页面、个人信息修改页面等事件的流程控制。
表C-10列出了读者管理控制层每个Action的入口(即调用Action的组件,在此模块中共用一个Action,不同功能使用不同方法实现)、传递Action的ActionForm以及出口(即Action将请求转发到目标组件)。
ReaderActionmethod=reader
表C-10:
读者管理的控制层设计
5.3模型层
读者管理业务逻辑层设计主要包括建立封装了角色信息的bean——Role.java,建立了封装数据库操作的bean——DB.java。
封装读者信息的bean
表C-11:
读者管理的模型层组件
6图书管理模块的详细设计
图书管理主要是进行还书、借书、查询读者信息的操作。
读者管理的Structs视图层、控制层和模型层三个层次的模块如表C-12所示。
returnbook.jsp
borrowbook.jsp
checkuser.jsp
CheckuserForm
CheckuserAction
checkuser.java
表C-12:
图书管理三层模块
6.1视图层
根据上述的功能介绍,总结出读者管理功能的页面设计如表C-13所示。
图书管理首页
managebook.jsp
图书管理员的首页
还书页面
还书、续借
借书页面
借阅图书
读者信息查询页面
checkuser.jsp
查询读者信息
表C-13:
图书管理模块的页面设计
读者管理模块各个表示页面之间的关系如图C-14所示。
6.2控制层
图书管理控制层主要负责还书、借书、查询读者信息的流程控制。
表C-15列出了读者管理控制层每个Action的入口(即调用Action的组件,在此模块中共用一个Action,不同功能使用不同方法实现)、传递Action的ActionForm以及出口(即Action将请求转发到目标组件)。
CheckuserActionmethod=mangerbook
Main2.jsp
managebook.jsp
借阅图书页面
表C-15:
图书管理的控制层设计
6.3模型层
读者管理业务逻辑层设计主要包括建立封装了读者借阅信息信息的bean——checkuser.java,建立了封装数据库操作的bean——DB.java。
封装读者借阅信息的bean
表C-16:
7系统管理模块的详细设计
系统管理模块主要实现增删图书、修改图书、增删读者、修改读者信息、查询信息功能,系统管理的Struct视图层、控制层和模型层三个层次的模块如表C-17所示。
addbook.jsp
delbook.jsp
updatebook.jsp
adduser.jsp
deluser.jsp
updateuser.jsp
checknews.jsp
ManageForm
ManageAction
manage.java
表C-17:
系统管理模块的三层模块
7.1视图层
根据上述的功能介绍,总结出读者管理功能的页面设计如表C-18所示。
系统管理首页
manage.jsp
添加图书页面
添加图书
删除图书页面
删除图书
添加读者页面
添加读者
删除读者页面
删除读者
修改图书信息页面
修改图书信息
修改读者信息页面
修改读者信息
查询页面
查询信息
表C-18:
系统管理模块的页面设计
读者管理模块各个表示页面之间的关系如图C-19所示。
7.2控制层
读者管理控制层主要负责增删图书、修改图书、增删读者、修改读者信息、查询信息的流程控制。
ManageActionmethod=manage
Main3.jsp
ManageActionmethod=manager
查询信息页面
method=manage
表C-20:
7.3模型层
读者管理业务逻辑层设计主要包括建立封装了读者借阅信息信息的bean——manage.java,建立了封装数据库操作的bean——DB.java。
封装管理信息的bean
表C-21:
8配置文件
Struct应用采用两个基于XML的配置文件来配置应用,这两个配置文件为Web.xml和strcut-config.Xml。
Web.xml适用于所有的JavaWeb应用,他是Web应用的发布描述文件,在JavaServlet规范中对它做了定义,对于Struct应用,在Web.xml文件中除了配置JavaWeb应用的常规信息,还应该配置和Struct相关的特殊信息。
strcut-config.Xml是Struct应用专有的配置文件,事实上,也可以根据需要给这个配置文件换为其它的文件名。
下面给出本项目中Web.xml配置文件和strcut-config.Xml配置文件的配置步骤和范围,在编码实施过程中,由开发经理指派专人负责所有文件的具体配置和协调。
8.1Web.xml配置文件
Web.xml配置文件的配置步骤和范围
一、配置Struct的ActionServlet
在Web.xml中配置ActionServlet主要包括声明ActionServlet(即配置<
Servlet>
元素)、运行时环境的初始化配置(即配置<
元素的<
init-param>
的子元素)和指定ActionServlet可以处理哪些URL(即配置<
Servlet-mapping>
元素)。
例如
<
servlet>
<
servlet-name>
action<
/servlet-name>
servlet-class>
org.apache.structs.action.ActionServlet<
/servlet-class>
<
param-name>
config<
/param-name>
param-value>
/WEB-INF/struct-config.xml<
/param-value>
/init-param>
/servlet>
servlet-mapping>
url-pattern>
*.do<
/url-pattern>
/servlet-mapping>
二、配置欢迎文件清单
当客户访问Web应用时,如果没有指定具体的文件名,Web容器可以自动调用Web应用的欢迎文件。
welcome-file-list>
元素用来设置欢迎文件清单。
例如:
welcome-file>
index.jsp<
/welcome-file>
login.jsp<
/welcome-file-list>
三、配置错误处理
在系统运行过程中如果错误发生而Struct框架不能处理这种错误时,就将错误抛给Web容器,为了避免让用户看到原始的错误信息,可以配置<
error-page>
元素及其子元素<
error-code>
和<
exception-type>
等.例如:
404<
/error-code>
location>
/common/404.jsp<
/location>
/error-page>
exception-type>
java.io.IOException<
/exception-type>
/common/system_ioerror.jsp<
四、配置标签库
Strcut框架提供了一些实用的客户化标签库,如果在应用中使用了标签库,那么必须在配置元素<
taglib>
中配置它们,它有两个子元素,<
taglib-url>
taglib-location>
.例如:
/WEB-INF/struts-bean.tld<
/taglib-url>
/WEB-INF/struts-bean.tld<
/taglib-location>
/taglib>
8.2strcut-config.Xml配置文件
Struts框架在启动的时候会读入其配置文件,根据它来创建和配置各种组件.Struts配置文件使得开发者可以灵活地组装和配置各个组件,提高了应用软件的可扩展性和灵活性.
struts-config>
有8个子元素:
●<
data-sources>
form-beans>
global-exceptions>
global-forwards>
action-mappings>
controller>
message-resources>
plug-in>
在配置文件中,必须按照这个先后顺序来配置各个子元素.
一、<
元素
元素用来配置应用所需要的数据源,数据源负责建立和特定数据库的连接。
元素包含零个、或者多个<
data-source>
子元素,它配置特定的数据源,可以包含多个<
set-property>
。
data-sourcekey="
sqlserver"
type="
mons.dbcp.BasicDataSource"
>
<
set-propertyproperty="
driverClassName"
value="
com.microsoft.jdbc.sqlserver.SQLServerDriver"
/>
url"
jdbc:
microsoft:
sqlserver:
//127.0.0.1:
1433;
DatabaseName=onlineCV"
maxActive"
5"
username"
sa"
password"
xiaobo633601"
autoCommit"
true"
/data-source>
/data-sources>
二、<
元素用来配置多个ActionFormBean。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统 详细 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)