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时就容易范事务问题,违反事务的原子性。也许你开发时不会有问题,测试有可能也会蒙混过关。但是上线后终究会出现一些莫名奇妙的问题。
分享到:
相关推荐
收集的Java Web整合开发实战:基于Struts 2+Hibernate+Spring-源代码,看到其他人下载币要的太多,给大家分享一下。 不是很全,但可以拿来参考了。 由于大小限制,还有另外一个包······
论坛系统项目(Struts 2+Hibernate+Spring实现)论坛系统项目(Struts 2+Hibernate+Spring实现)论坛系统项目(Struts 2+Hibernate+Spring实现)论坛系统项目(Struts 2+Hibernate+Spring实现)论坛系统项目(Struts...
Java Web整合开发实战--基于Struts 2+Hibernate+Spring.pdf 1章 Web的工作机制 2章 搭建Java Web开发环境 3章 JSP及其相关技术 2篇 表现层框架Struts技术 4章 Struts快速上手 5章 解密Struts之核心文件 6章 ...
精通Java EE:Eclipse Struts2 Hibernate Spring整合应用案例代码和数据库压缩包6
收集的Java Web整合开发实战:基于Struts 2+Hibernate+Spring-源代码,看到其他人下载币要的太多,给大家分享一下。 不是很全,但可以拿来参考了。 由于大小限制,还有另外一个包······
整合使用最新版本的三大框架(即Struts2、Spring4和Hibernate4),搭建项目架构原型。 项目架构原型:Struts2.3.16 + Spring4.1.1 + Hibernate4.3.6。 此外,还有:log4j、slf4j、junit4、ehcache等知识点。 项目...
使用mysql数据库的struts2 spring hibernate整合简单示例,也可参考我的:“struts2 spring hibernate整合要点、注意点”这篇文档来配置
struts2和spring和Hibernate的整合包,在MyEclipse中自动导入老是有冲突包。
Struts2-Hibernate-Spring,javaee课程的小实验和综合实验,还有详细的报告
以下章节源码[03] [04] [05] [08] [10] [11] [12] [13] [14] [15] [16]
spring整合struts2与hibernate核心配置文件
Struts2 Spring Hibernate IBatis Struts2 Spring Hibernate IBatisStruts2 Spring Hibernate IBatisStruts2 Spring Hibernate IBatis 只需要导入相应的jar包就行了 ,数据库是mysql :数据库名叫做mydatabase,表名...
C:\Struts,Hibernate,Spring集成开发宝典\Struts,Hibernate,Spring集成开发宝典光盘资料2.rar
希望此套框架整合对深入了解和学校Struts2+Spring4+Hibernate4三大框架整合技术有帮助
struts2 spring hibernate框架技术与项目实战 光盘源码 上 资源150M必须分成3部分上中下
Maven搭建spring_struts2_Hibernate项目源码,包括数据库,博客地址:http://blog.csdn.net/fengshizty/article/details/43794911
Struts2+hibernate+spring 构建的在线音乐网站
详细讲解了S2SH框架技术的基本知识和使用方法,从Eclipse开发平台、JSP、Servlet等基础知识讲起,由浅入深,重点介绍了当前流行的三个轻量级开源框架:Struts2、Spring和Hibemate.
Struts 2+Hibernate+Spring实现论坛系统
struts2 spring hibernate框架技术与项目实战丛书的光盘源码