基于 SSH 架构的图书管理系统的设计与实现
陈洪艳;杨国林;贺慧
【摘 要】Books management system is widely used in school ,business ,enterprises and institu-tions ,etc .But for every school that making information construction ,books management system is necessary .And the majority books management system that used currently are based on ASP .Net plat-form .Using C # language to realize the system has poor maintainability and expansibility ,and the function is unitary ,and the interaction with readers is not good .This paper studied the SSH frame-work model and its application in practice deeply ,and on this basis ,it used Java language to develop the books management system ,and changed the implementation way of the system ,and made the sys-tem implementation process easier to understand ,and made the post -maintenance and extension be-come simple ,and promoted the books management information construction .%图书管理系统目前被广泛应用于学校、商业、企事业单位等。但对每个进行信息化建设的学校来说,图书管理系统是必不可少的。而目前使用的图书管理系统多数基于ASP .Net平台、
使用C#语言实现,其可维护性和可扩展性较差,功能比较单一、与读者的交互性也比较差。本文深入研究了SS H架构模式及其在实践中的应用,并在此基础上使用Java语言开发了图书管理系统,改变了系统的实现方式,使系统实现过程容易理解,后期维护和扩展变得简单,促进了图书管理的信息化建设。
【期刊名称】《内蒙古工业大学学报(自然科学版)》
【年(卷),期】2014(000)003
【总页数】5页(P210-214)
【关键词】基于java的图书管理系统图书管理;信息化建设;SS H架构
【作 者】陈洪艳;杨国林;贺慧
【作者单位】内蒙古工业大学信息工程学院,呼和浩特010080;内蒙古工业大学信息工程学院,呼和浩特010080;内蒙古工业大学信息工程学院,呼和浩特010080
【正文语种】中 文
【中图分类】TP311.5
0 引言
目前,图书管理系统的某些工作仍然采用手工管理,比如用户借书量升级、用户注销等。管理员与用户间沟通交流的方式比较单一、用户借书量得不到及时升级等都是大多数图书管理系统共有的缺陷。因此,研究建立一个功能全面的图书管理系统,该系统不仅能满足图书管理的需要,提高工作效率,还能方便读者借阅图书和享受更多服务,同时还可以为其他部门提供必要的数据信息[2]。
1 SSH架构
SSH为Struts、Spring和Hibernate的一个集成架构[1],Struts、Spring和Hibernate各自都是非常经典的实现框架,Struts实现了MVC模型[5],Hibernate实现了对数据库的对象化操作。Spring的IoC容器实现了关联对象之间的依赖注入,而且Spring在SSH中很好的把Struts和Hibernate衔接在一起。
SSH架构的整个层次结构可分为展现层、业务逻辑层、数据持久层。Struts、Spring和Hiber
nate各自负责不同的任务,其架构如图1所示。
图1 SSH技术组合架构图Fig.1 The figure of SSH technology combination architecture
2 基于SSH架构的图书管理系统的开发
2.1 系统功能设计
从管理员和读者两类用户的角度设置系统的主要功能结构如图2所示。
图2 系统功能结构图Fig.2 The figure of system function structure
2.2 SSH架构在系统中的应用
该系统以MyEclipse为开发工具,采用SSH架构成功地实现了图2所示的全部功能。本文仅以“借阅图书”模块为例详细介绍SSH架构在系统中的具体应用。
2.2.1 系统模型的实现
为了更清楚叙述系统结构,把模型分为三层:展现层(PL)、业务逻辑层(BLL)和数据持久层(D
L)。展现层(PL)主要通过Struts完成数据的收集、转移和输出结果。业务逻辑层(BLL)是通过Spring完成业务逻辑的关联问题。数据持久层(DL)主要是通过Hibernate框架完成对数据库的操作。
在目录src/com.booksystem.web.actions中定义了LendBookAction类和在目录src/com.booksystem.web.forms中定义了LendBookActionForm类,在系统控制器ActionServlet[3]控制下,LendBookActionForm类主要完成收集jsp提交的或由session保留的值,然后把收集到的这些值供给LendBookAction类使用。LendBookAction类负责调用业务逻辑层(BLL)的service和把处理结果返回给控制器,供控制器选择跳转。业务逻辑层(BLL)完成DAO层的设计,通过application-xml配置文件完成LendBookDao和LendBookService的依赖注入,即业务逻辑的处理。数据持久层(DL)通过LendBook.java文件和l文件向数据库存储关系表,数据持久层(DL)提供了与数据库连接和交互的公共操作功能接口,专门处理与数据库的连接和关闭,而且是系统自动开启和关闭。这样,对其它模块来说,业务流程的处理过程是感觉不到数据库的打开和关闭的。业务逻辑层(BLL)对外仅提供访问接口,从而保证了模块间的封装性。然后业务逻辑层(BLL) 通过DAO的LendBookDaoImpl类实现借书功能。
2.2.2 展现层(PL)的实现
展现层(PL)主要负责数据的收集、组织、转移和页面跳转。实现过程如图3所示。通过Struts框架的ActionServlet控制器控制,首先搜索到想要借阅并且可以借阅的图书,然后输入读者借书卡号后提交,接着控制器ActionServlet接收lendbook.do?command=validatereader请求,同时LendBookActionForm类进行数据收集,控制器ActionServlet发送请求给LendBookAction类,对读者能否借阅图书进行验证。验证不通过将跳转至失败界面,如果验证成功,下一步ActionServlet接收lendbook.do?command=lendbook请求,控制器调用LendBookAction类进行处理,负责对数据库进行借阅图书数据的更新,完成后给客户端返回操作结果。所有的处理过程控制器都要根据Struts-config-xml配置文件进行跳转。最后跳转至浏览器界面显示结果。
图3 借书功能展现层实现过程Fig.3 The implementation process of borrowing books function presentation layer
Struts-config-xml中关于借书功能实现的配置内容:
<struts-config>
<form-beans>
<form-bean name="lendBookForm"
type="com.booksystem.web.forms.LendBookActionForm"/>
</form-beans>
<action path="/lendbook"
type="org.springframework.web.struts.DelegatingActionProxy"
name="lendBookForm"
scope="request"
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论