基于Web的高校教材选订系统的设计与实现 - 论文定稿 下载本文

平顶山学院本科毕业设计

中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足对信息处理的需求。在系统开发过程中,必须采用一定的方法保证系统的准确性。

2.系统的易用性

要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面。

3.系统的标准性

在自主开发本系统时,要进行良好的设计工作,制订行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性。

4.系统的可扩展性

轻量级的SSH整合框架和面向对象的程序设计方法,能够达到面向未来的发展要求,从而提高扩展效率、缩短开发周期,便于二次开发。

5.系统的安全性

安全问题是系统最关键的问题。对用户分配角色时,对密码进行加密存储,使用户信息更加安全。同时对一些角色进行权限限制,防止出现因权限过大而造成的错误操作。还可以随时对数据库中的数据进行备份和恢复等操作。

3.6 本章小结

本章对系统进行了需求分析,首先分析了教材选订工作的业务流程,接着提出了系统的设计目标,然后通过对系统功能需求的分析,得知了该系统所应完成的功能,然后进行了数据库需求分析,总结出了系统的数据需求,最后进行了系统性能需求分析。

15

基于Web的高校教材选订系统的设计与实现

4 总体设计

总体设计主要是指在系统分析的基础上,对整个系统的划分(子系统)、机器设备(包括软、硬设备)的配置、数据的存贮规律以及整个系统实现规划等方面进行合理的安排[25]。

本章从系统设计思想、数据库设计、系统功能设计和接口设计四个方面进行描述。

4.1 体系结构设计

本系统采用目前主流的SSH三层架构技术,SSH三层架构技术是目前流行的MVC 框架之一。典型的J2EE 三层结构,分为表现层、中间层(业务逻辑层)和持久层。Web 应用的前端是表现层。SSH 整合框架使用Struts 框架,其负责的工作为:管理用户的请求,做出相应的响应;提供一个流程控制器,委派调用业务逻辑和其他上层处理;处理异常;为显示提供一个数据模型和用户界面的验证等。Web 应用的后端是持久层。SSH 整合框架使用Hibernate,其持久化对象是基于简单的Java对象(Plain Old Java Objects,POJO)和Java 集合的,负责的工作为:查询对象的相关信息;增加、删除、更新数据库记录等。Web 应用的中间部分是业务逻辑层。SSH 整合框架使用Spring 框架,其负责的工作为:管理事物;提供与其他层相互作用的接口;管理业务层级别的对象的依赖;管理从业务层到持久层的程序执行等。应用 Struts 的目的是为了分离视图层和控制层;Spring 是为了通过接口编程,提高程序的重用率和可维护性;Hibernate 的目的是为了实现用面向对象的思想来管理数据库,实现与数据库之间的低耦合。这种整合的开发模式让开发更加方便、快捷、思路清晰。

系统基本业务流程是:在表示层中,首先通过JSP实现界面交互,负责传送请求(Request)和接收响应(Response),然后Struts将ActionServlet接收到的Request委派给Spring DelegatingActionProxy,再转交给相应的Action处理。在业务层中,管理服务组件的 Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(Data Access Objects,DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果[26]。

16

平顶山学院本科毕业设计

该系统的架构图如图4-1所示。

控制器StrutsActionServletActionForm业务层Spring持久层HibernateHibernateTemplateRequestSpringAOP数据库ResponseJSPActionSpringIoCHibernateDAO

图4-1 系统架构图

4.2 数据库设计和实现

数据库设计的目标是设计出该系统所使用的数据库,并创建相应的数据表,每个表中要有符合条件的属性。首先进行数据库概念结构设计,然后进行数据库逻辑结构设计,最终完成符合该系统的完整的数据库。

4.2.1 数据库概念结构设计

概念结构是独立于任何一种数据模型的信息结构。数据库概念结构设计的目标是将需求分析得到的用户需求抽象为信息结构,产生反映全组织信息需求的整体数据库概念结构,即概念模式,它是整个数据库设计的关键图对其进行描述。

本文以教材相关实体信息为例进行描述: 教材信息实体包括:教材类别编号、教材类别。

作业本信息实体包括:作业本编号、作业本类别、单价。

实验报告纸信息实体包括:实验报告纸编号、实验报告纸类别、单价。 书籍信息实体包括:书籍条形码、书名、作者、出版社、单价。

作业本入库信息实体包括:编号、类别、数量、入库日期、入库检验员。 实验报告纸入库信息实体包括:编号、类别、数量、入库日期、入库检验员。 书籍入库信息实体包括:编号、类别、书籍条形码、入库数量、入库日期、入库检验员。

作业本出库信息实体包括:出库编号、院系、专业、班级、学期、作业类别、出库数量、出库日期、出库检验员。

实验报告纸出库信息实体包括:出库编号、院系、专业、班级、学期、实验报告类别、出库数量、出库日期、出库检验员。

17

[27]

根据对系统所作的需求分析,规划出本系统中使用的数据信息实体,并用E-R

基于Web的高校教材选订系统的设计与实现

学生用书出库信息实体包括:出库编号、院系、专业、班级、学期、书籍条形码、出库数量、出库日期、出库检验员。

教师用书出库信息实体包括:出库编号、院系、年份、学期、书籍条形码、出库数量、出库日期、出库检验员。

教材相关E-R图如图4-2所示。

条形码 出库数量 出库日期 检验员 条形码 入库数量 出库日期 出库数量 条形码 学期 学期 n类别 1书籍入库记录n入库日期班级年份 教师用书出库记录编号检验员 n学生用书出库记录专业出库编号 出库 出库 院系院系 作业出库记录学期 1条形码班级 作业类别书名 1 出版社出库编号入库1 n 单价 报告类别 学期检验员 专业 作者书籍出库数量报告出库记录n 班级 院系 n 出库数量出库日期 专业出库编号出库出库日期包含检验员 n出库院系检验员 1 n类别编号1 教材教材类别1 出库编号作业编号 包含作业本1 1 包含 实验报告报告编号作业类别 数量n 作业入库记录n n 类别报告类别单价 类别入库报告入库记录入库单价 编号 入库日期 检验员 检验员 入库日期 数量 编号 图4-2 教材相关E-R图

4.2.2 数据库逻辑结构设计

逻辑结构设计的任务是将概念结构设计阶段设计好的基本E-R图转化为对应的关系模式,从而完成逻辑结构设计,为数据库实现作准备。

以教材相关实体信息E-R图为例,将其转换为关系模型,可得到如下关系模式:(关系的码用下横线标出)

教材关系模式:教材(教材编号,教材类别)

作业本关系模式:作业本(作业类别编号,作业类别名称,单价)

实验报告纸关系模式:实验报告纸(报告类别编号,报告类别名称,单价) 书籍关系模式:书籍(条形码,书名,作者,出版社,单价)

作业入库关系模式:作业入库(入库编号,类别,数量、入库日期、检验员) 实验报告入库关系模式:实验报告入库(入库编号,类别,数量、入库日期、入库检验员)

18