基于SSH的J2EE架构在信息管理中的应用

来源 :商场现代化 | 被引量 : 0次 | 上传用户:dengxiaofei317
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要]本文提出了基于轻量级Web 框架——Struts + Spring + Hibernate的系统结构, 介绍了Struts 的MVC结构、Spring 的基本组成和结构以及Hibernate的基本对象,并将三种框架技术整合起来应用到系统中, 给出一个具体的实例配置,前端采用Struts 的MVC框架,中间层采用Spring,后台采用Hibernate,提高了项目代码的可重用性和开发效率。
  [关键词]MVC STRUTS SPRING HIBERNATE J2EE
  面对日益复杂的软件规模,人们深刻地认识到,选择良好的开发框架对保证系统的成功至关重要。成熟的框架会减少重复开发工作量、缩短开发时间、降低开发成本, 增强程序的维护型和可扩展性。J2EE多层分布式应用体系结构的出现促进了软件业的巨大改变,但J2EE庞大的体系显得有些臃肿,因此J2EE轻量级架构——Struts +Spring+Hibernate目前已经成为开发Web应用的主流。
  
  一、开源框架Struts 、Spring 、Hibernate
  
  1.Web 框架Struts。Struts 框架是由Apache 软件组织提供的一项开源项目,一个基于模型(Model)——视图(View)——控制器(Controller)(MVC)模式的应用架构的开源框架。框架分为三部分: 模型、视窗和控制器。
  模型:从概念上模型分为两类:系统的内部状态和改变系统状态的动作。模型是所有的商业逻辑代码片段所在。一个模型能为多个视图提供数据,因此提高了应用的可重用性。
  视窗:与控制器Servlet配合工作的一整套JSP定制标签库构成,利用它可以快速建立应用系统的界面。
  控制器: 控制器可以理解为模型与视图间沟通的桥梁,它可以分派用户的请求并选择适当的视图用于显示。其本质上是一个Servlet,将客户端请求转发到相应的Action类。
  MVC模式的使用,减弱了业务逻辑接口和数据接口之间的耦合,使视图层更富于变化。
  2.Spring框架。Spring是一个开源项目,为简化企业级系统开发而诞生的轻量级解决方案,可建立“快装式企业应用”。在此基础上,还提供了包括声明式事务处理,RMI或Web Services远程访问业务逻辑,以及可以多种方法进行的持久化数据库的解决方案。
  Spring可以看作是一个标准开发组件,根据自己的需要,只取用它的部分组件使用而无须涉及其他。Spring的框架基础是JavaBean属性的Inversion of Control 容器。
  3.Hibernate框架。Hibernate是一个免费的开源Java包,一个面向Java 环境的对象或关系数据库映射工具。它使得与关系数据库打交道变得十分轻松,就像您的数据库中包含每天使用的普通Java对象一样,更不必考虑如何把它们从神秘的数据库表中取出或放回。
  工作方式:它不会强迫您修改对象的行为方式,也不需要实现任何不可思议的接口以便能够持续存在。惟一需要做的就是创建一份XML“映射文档”,告诉Hibernate您希望能够保存在数据库中的类,以及它们如何关联到该数据库中的表和列,然后就可以要求它以对象的形式获取数据,或者把对象保存为数据。
  
  二、基于SSH的J2EE架构的应用
  
  开发实践中可将这三种框架整合起来应用到我们的Web项目中不同层,制作一个员工信息管理系统。
  1.以管理信息系统中用户日志管理的登录为例, 简单介绍如何在配置文件中将Struts、Spring 和Hibernate 三者有机地结合起来。
  Spring 整合Struts的配置的web.xml,在WEB服务器起动后加载所有的配置,其配置如下所示:
  
  contextConfigLocation
  /WEB-INF/config/spring/applicationContext*.xml

  
  com.framework.spring.web.context.ContextLoaderListener
  

  
  action
  org.apache.struts.action.ActionServlet
  
  /WEB-INF/config/struts/struts-config.xml
  

  
  action*.do

  在Struts 的配置文件中有相应的代码:
    type=”com.examsystem.examdb.web.LoginAndLogoutAction”>
  
  

  以上两段代码完成用户登录动作, 下面由相应的action 来处理具体的业务逻辑, 如从数据库中提取数据来验证用户的合法性等。对数据库的操作由Hibernate 来完成,Spring 配置文件中有如下语句:
  
  
  
  com/ntu/domain/pojo/hbm/Employee.hbm.xml

  相应的Employee.hbm.xml 文件内容如下:
  
  
  
  
  
  

  2.架构的结构流程(如图所示)
  图构架的结构
  WEB服务器启动后,将加载WEB应用,并把STRUTS和SPRING同时也加载到SERVLET容器中,当有一客户请求到达服务器时,ACTION SERVLET将查找ACTION匹配请求的ACTION,然后委托到指定的ACTION。在该ACTION中,调用Business service方法来处理相应的业务逻辑。这一过程中,Hibernate处在DAO层,用于处理所有与数据库的操作。这里也体现了三层架构:第一层,表现层(STRUTS),它有一个总的控制器ActionServlet,从客户端传来的动作都会由这个控制来处理,或者转发到真正的ACTION那里来处理,当这个请求处理完之后,再返回到ActionServlet,找到要呈现给客户端的页面;第二层,业务逻辑层,处理相关的商业逻辑,并且使他们的处理都处在同一个事务中,这样当有某一个操作出现错误时,保证数据库能恢复到最初状态,从而保证数据的完整性;第三层,持久层(Hibernate 和 DB数据库),Hibernate把最原始的JDBC封装了起来,Hibernate的好处在于我们不用直接写SQL语句,可用对象或HSQL来取得所需数据。
  
  三、结束语
  
  Struts+Spring+Hibernate 是目前国内外众多知名软件企业最主流的应用技术, 也是J2EE 未来发展的趋势, 在项目开发实践中应用该构架,降低了程序的复杂度, 易于调试, 减轻了程序员的负担, 具有很强的扩展性,该结合框架一定具有美好的前景。
  
  参考文献:
  [1]Hibernate 官方网站:http://www.hibernate.org.
  [2]Struts 官方网站:http://Jakarta.apache.org/struts/index.html
  [3]Spring 网站:http://www.springframework.org/
  [4]黄烟波张红宇:基于Struts和Hibernate的J2EE构架 计算机时代.2004年第10期
  [5]胡晓丹魏长军:基于Struts + Spring + Hibernate 架构的能源管理系统的研究.计算机与现代化.2006年第12期
  注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
[摘要]针对多机器人控制系统研究的需要,将CAN总线引入到多焊接机器人系统当中,实现各设备间相互通信、协同操作的分布式控制形式,适应现代工业的发展的需要,便于对整个大型工业系统的控制。本文充分利用CAN现场总线的优点,在多焊接机器人系统中采用开放式的体系结构,通过在CAN现场总线上增减伺服控制节点,实现多机器人运动控制。  [关键词]CAN总线 现场总线 多机器人  近年来随着机器人研究的不断深入
期刊
[摘要]XML数字签名技术可以在无线Web服务应用程序提供轻量级且灵活的安全解决方案。本文讨论了XML数字签名及其应用程序的重要性,并提供了Bouncy Castle密码包的数字签名API,最后给出了在J2ME/MIDP无线客户端和JSP页后台之间的安全XML消息传递环境中的实现示例。  [关键词]J2ME XML 数字签名     一、引言    基于Java的Web服务和无线Java开发是Ja
期刊
[摘要]ERP系统的引入和实施,对企业来说是一个复杂的系统工程,将项目管理的理论和方法应用于企业信息化建设中,本着整体规划,分步实施的原则,对企业ERP项目所涉及到的方方面面进行有效的计划、组织、管理和监控,进而达到预期目标和效果,进而为企业创造更大的效益。  [关键词]项目管理信息化建设ERP     一、引言    项目管理产生于第二次世界大战期间,主要应用于国防和军工项目。20世纪90年代开
期刊
[摘要] 本文在介绍Blog和知识管理基本理论的基础上,阐述了知识的分类和转化,探讨了基于Blog的知识管理过程,并指出了Blog应用中的不足。  [关键词] Blog 知识管理 显性知识 隐性知识  随着知识经济的到来,信息环境的变化,以及信息技术的发展,知识成为一种重要的生产资源被加以管理开发和应用。但在实施知识管理的过程中,也出现了一系列的问题,如:搜索不充分;难以保持更新;拒绝共享等,这些
期刊
[摘要]通过讨论动态联盟企业的利润分配问题,在Shapley值法的基础上,综合考虑价值创造、创新、风险承担和资源投入对利润生成的影响,创建了基于Shapley值法的新模型。并通过数值举例,表明了该新模型的实用性、灵活性,同时该模型强调了对动态联盟中弱小企业的保护,更好的确保分配结果的公平性和有效性。  [关键词]动态联盟 利润分配 Shapley值法 模型    一、引言    根据市场变化,由一
期刊
企业如何做好竞争对手分析?企业的中高层领导研究企业将如何分析竞争对手时发现一个有趣的现象,类似我们听过的故事“盲人摸象”,不同部门和级别的经理对竞争对手分析的理解不同,关心的内容也各异。销售经理谈了许多关于如何建立竞争对手产品价格跟踪系统、定价、销售队伍的分布、业务能力、薪酬待遇和服务等内容;市场营销经理最关心竞争对手的品牌定位、市场份额、产品的幅度和深度、广告开支、分销范围等;生产运营经理非常注
期刊
[摘要]由于目前市场经济的持续和发展,自二十世纪九十年代以来,对卖场文化表现卖点的渴求,使卖场中的POP广告有了非常长足的发展。特别以图书出版物卖场所存在的POP广告为主要论述对象,探讨POP广告在实际应用中的具体作用及其定位并探讨如何合理运用POP广告使产品销售得到提升的有效方法。   [关键词]信息传递 产品销售 品牌定位 图书营销  POP广告,意为购物点广告或销售点广告。它既是商品经济高度
期刊
[摘要]随着经济全球化的进程加快,开展对外直接投资,参与国际分工,是我国企业的必然选择。本文应用SWOT分析框架,对我国企业对外直接投资的优势、劣势、机会和威胁四个因素进行了分析,并提出了相应的对策建议。  [关键词]对外直接投资 SWOT 对策    一、引言    随着经济全球化进程的加快,开展跨国经营,主动参与国际竞争,不断扩大生存和发展的空间,已成为我国企业发展的必然选择。在加入WTO以后
期刊
[摘要]本文对项目投资中运用DCF法进行决策时的风险处置的调整现金流量法、CAPM模型法和风险调整折现率等方法进行了分析,对在实际应用中应注意的问题进行了分析并提出了解决办法。  [关键词]项目评估 资金成本 金融风险  对投资项目进行评价实际上是投资者对投资项目的风险和收益进行预测与权衡,在风险既定的情况下,如果投资者的预期收益率高于其资金成本,则此项目是可行的。对投资项目进行评价最常用的方法有
期刊
[摘要] 经济效益评价是企业经营活动中一项不可缺少的工作。为了科学、准确的评价企业经济效益,采用层次分析法(AHP)和人工神经网络(ANN)相融合的组合综合评价方法来建立经济效益评价模型,最终给出科学、准确的经济效益评价结果。  [关键词] 层次分析法(AHP) 人工神经网络(ANN) 经济效益 综合评价    引言    企业经济效益已成为投资者和生产经营者越来越关注的问题,那么,应如何科学地、
期刊