订单系统:Struts+Spring+Hibernate(简称 SSH)集成开发示例
作者:何春根 厦门东南融通系统工程有限公司
如果你是 SSH 初级开发人员,请仔细阅读
如果你是 SSH 中级开发人员,请作参考阅读
如果你是 SSH 高级开发人员,请务必批评指正!
介绍:
这个示例是我学习 Spring 和 Hibernate 时所作的一个练习,功能比较简单,但是能比较全面的反映
Struts+Spring+Hibernate 的思想及一般开发步骤,现在整理出来与大家分享,本文适合 Spring 与 Hibernate
的初级及中级开发人员阅读。本文假设读者具有 Struts,Spring 和 Hibernate 的基础知识,不再讲述三个框
架的原理和基础知识,重点在于引导读者进行一次 Struts,Spring 和 Hibernate 的集成开发之旅,亲身体验
其魅力。
软件环境
Spring1.2.9+Hibernate3.1.3+Struts1.2.9,开发工具:MyEclipse5,数据库:MS SQLServer2000 服务器:
Tomcat5.5.X。请自己去下载相关软件,并安装好。
系统简介:
示例应用程序是一个订单管理系统的简化版,去除了产品管理,用户管理以及复杂的页面等,因为
系统全面的业务功能不是本文的关注点,这样有利于快速进行 Struts,Spring 和 Hibernate 的整合开发,而
不至于花过多时间纠缠于业务功能和网页的制作。示例将实现对一组持久数据的标准的创建、读取、更
新、删除(Create/Read/Update/Delete,CRUD)操作。这个示例应用程序为一个订单编辑程序,用户
可以在列表中查看订单,并新建,修改,删除,查找订单。
虽然这个示例应用程序是一个比较简单的应用,但为了更好的阐述 Hibernate,Spring 和 Struts
的作用范围,我们还是将这个应用程序进行分层的阐述。
应用程序的分层
和通常大多数的 Web 应用程序一样,本应用程序分为四层,这四层是: presentation(描述),
business(业务),persistence(持久)和 domain model(域模型)。
表示层(The Presentation Layer)
一般来讲,一个典型的 Web 应用的末端应该是表示层。用来管理用户的请求,做出相应的响应,给
出显示。在这里,我们使用了 Struts 框架来实现本应用程序的表示层。
域模型层(The Domain Model Layer )
域模块层由实际需求中的业务对象组成,即我们常说的 BO(Business Object) 比如, Order ,
OrderLineItem 等 等 。 开发 者 在 这 层 不 用 管 那 些 DTOs , 仅 关 注 domain object 即 可 。 例 如 ,
Hibernate 允许你将数据库中的信息存放入对象(domain objects),这样你可以在连接断开的情况下
把这些数据显示到 UI 层。 而那些对象也可以返回给持久层,从而在数据库里更新。
业务层(The Business Layer)
一个典型 Web 应用的中间部分是业务层或者服务层。这一层最容易受到忽视,从而导致大量的代码
紧密的耦合在一起,从而使整个程序变的难以维护。在这里,我们使用 Spring 框架来解决这个问题,
1
- 1
- 2
前往页