`
wangrui
  • 浏览: 191047 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring使用之:与Struts2和Hibernate搭档

阅读更多
Struts,Spring,Hibernate这三个火枪手这几年可以说是所向披靡,红的发紫。我不想说它们每一个的功能,这些网上随便找找就可以得到一堆的结果;也不想说它们之间怎么集成。我要说得是在它们搭档的时候如何让它们各就其职。

我们在做一个应用的时候,有好多要考虑的问题,比如:如何处理例外,如何处理事务,如何访问数据库等等。每个人都有自己的做法。在Struts,Spring,Hibernate集成的项目中我们一般会分出好多的类:Action、Service接口、Service的实现、Dao接口、Dao的实现。这些类又是如何分担这些任务的呢?

也许你会说数据库访问当然要由Dao负责,但是访问中抛出的例外如何办?需要考虑事务吗?我的做法,抛出的例外全部向上抛出(抛给service层),而且大多是抛出运行时例外,dao不需要处理例外。事务更不应该dao来处理。也就是说dao中不应该有commit。dao实现可以用hibernate的方式,而且hibernate也只能用在dao的实现中。

Service主要负责处理事务,大多数例外也抛给action不做处理。一个Service可以依赖多个dao,这样才能保证事务的完整性。

Action负责处理例外,尽量依赖一个service,也许有人不同意这一点,但是当依赖多个service时就容易范事务问题,违反事务的原子性。也许你开发时不会有问题,测试有可能也会蒙混过关。但是上线后终究会出现一些莫名奇妙的问题。

0
0
分享到:
评论

相关推荐

    基于spring2.5+hibernate3+struts2开发的网上书店

    在IT行业中,SSH(Spring、Struts2、Hibernate)是一个非常经典的Java Web开发框架组合,被誉为"企业级应用开发的黄金搭档"。本实例“基于spring2.5+hibernate3+struts2开发的网上书店”展示了如何将这三个框架有效...

    原创 myeclipse+struts+hibernate 人事管理系统

    通过这个项目,开发者可以学习到如何在MyEclipse环境中搭建Struts2和Hibernate的整合项目,理解MVC模式在实际应用中的工作流程,以及如何使用Hibernate进行数据库操作。同时,对于优化和调试也有很好的参考价值,...

    基于SSH2组合框架下办公自动化系统

    其中,基于JSP2技术,并整合Struts2.0、Hibernate3.2与Spring2.5技术的JavaWeb应用被称为“黄金搭档”,广泛应用于各种复杂的项目中。 #### 二、框架介绍 ##### 1\. Struts2框架 Struts2是基于Model2模式的一种...

    SHH完整开发的航空票务系统

    SSH(Struts2、Hibernate、Spring)是Java Web开发中的经典组合,被誉为“轻量级企业级应用的黄金搭档”。这个框架集为开发者提供了一整套高效、稳定且易用的开发工具,大大简化了Web应用的构建过程。下面将详细阐述...

    进销存管理系统

    SSH(Struts2 + Spring + Hibernate)是Java Web开发中的一个经典组合,被誉为“企业级应用开发的黄金搭档”。Struts2是一个基于MVC(Model-View-Controller)设计模式的Web应用框架,用于处理和组织业务逻辑;...

    javaee学习肉容

    8. **SSH**:指的是Struts、Spring和Hibernate三个框架的组合,是JavaEE开发中常见的“黄金搭档”。SSH面试题汇总涵盖了这三个框架的关键知识点和最佳实践。 9. **Hibernate**:Hibernate是一个对象关系映射(ORM)...

    研究组主页管理系统的设计与实现

    这个系统利用了MySQL作为数据库存储数据,后端开发框架选择了经典的SSH(Struts2 + Spring + Hibernate)组合,这种架构在当时是非常流行且成熟的解决方案。 【SSH框架详解】SSH框架是Java Web开发中的“黄金搭档”...

Global site tag (gtag.js) - Google Analytics