ssh2框架中,通过spring管理事务,一般将事务管理到哪一层 ssh2框架中,通过spring管理事务,一般将事务管理到哪一层 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 action层调用service层,service层调用dao层事务管理一盘通过service层的包命名和方法命名决定他的事务操作权限 我的工程配置的事务,给你看下 <!-- 配置Hibernate的局部事务管理器,使用HibernateTransactionManager类 --> <!-- 该类实现PlatformTransactionManager接口,是针对Hibernate的特定实现--> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <!-- 配置HibernateTransactionManager时需要依注入SessionFactory的引用 --> <property name="sessionFactory" ref="sessionFactory" /> </bean> <!-- 配置事务切面Bean,指定事务管理器 --> <tx:advice id="txAdvice" transaction-manager="transactionManager"> <!-- 用于配置详细的事务语义 --> <tx:attributes> <tx:method name="insert*" propagation="REQUIRED" /> <tx:method name="update*" propagation="REQUIRED" /> <tx:method name="delete*" propagation="REQUIRED" /> <tx:method name="*" read-only="true" /> </tx:attributes> </tx:advice> <aop:config> <!-- 配置一个切入点,匹配com.demo.hibernate.service包下 所有以Impl结尾的类的所有方法的执行 --> <aop:pointcut id="leePointcut" expression="execution(* com.demo.hibernate.service.*Impl.*(..))" /> <!-- 指定在txAdvice切入点应用txAdvice事务切面 --> <aop:advisor advice-ref="txAdvice" pointcut-ref="leePointcut" /> </aop:config> 根据楼主工程大小来定,本人通常做法与楼上相同,分三层,action层,manager层,dao层 谢谢楼上的两位我也是管理在,业务层的但是我看有人帖子是写到dao层的,有点迷惘了!希望大家讨论下呗! dao层是对单个对象(数据库单表)操作的,而事务的意思是对多表操作时,有的表操作成功,有的表操作失败时,可以回滚。所以说对DAO层应用事务作用充其量也就是触发提交而已。而起到作用,必须应用到service层 一般 dao daoimpi manager 一般有些项目不要manager层的 所以到daoimpi层就是 就是services 和楼上的人说的一样啊 不要误会 这是本人的习惯! 一般 dao daoimpi manager 一般有些项目不要manager层的 所以到daoimpi层就是 就是services 和楼上的人说的一样啊 不要误会 这是本人的习惯! 都是放在service层上,因为这层会调用dao层,而service层中某个类里的方法调用的不仅仅只是dao里面的一个方法,有可能是多个方法 一起调用,如果调用的这些方法中有一个不成功或抛出异常,就必须全部返回到以前的数据,所以就必须将这个service层中某个类里的方法进行管理,这就是用到了spring里的事务管理,所以都是事务管理一般都是用在service层中 HQL语句一般会写到,哪一层?业务逻辑层,还是写到dao层呢? 一般写到service层 然后传到dao层去执行..我是这么做的 另外问一句业务层,你们一般写逻辑吗?还是将逻辑写到了dao层呢? 业务层 顾名思义 就是处理业务逻辑的 逻辑当然写在业务层了dao层只负责对数据库的增删改查 操作 不涉及逻辑 快速排序 递归问题 求解。。。 京东(360buy) java这块使用的有哪些技术? 关于并发问题 服务器的jsp里取不到图片。本机没问题 Hibernate 修改记录问题 同个网络之间不同主机里的文件操作 Virgo Tomcat Server :Archive for required library cannot be read or is not a val BS&CS问题 急!!jbuilderx和weblogic8.1结合中的问题 内存中染上病毒该咋办!!! hibernatetemplate的一个问题 关于断点续传后修改、删除文件名的问题,急...........
事务管理一盘通过service层的包命名和方法命名决定他的事务操作权限
<!-- 该类实现PlatformTransactionManager接口,是针对Hibernate的特定实现-->
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<!-- 配置HibernateTransactionManager时需要依注入SessionFactory的引用 -->
<property name="sessionFactory" ref="sessionFactory" />
</bean> <!-- 配置事务切面Bean,指定事务管理器 -->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<!-- 用于配置详细的事务语义 -->
<tx:attributes>
<tx:method name="insert*" propagation="REQUIRED" />
<tx:method name="update*" propagation="REQUIRED" />
<tx:method name="delete*" propagation="REQUIRED" />
<tx:method name="*" read-only="true" /> </tx:attributes>
</tx:advice>
<aop:config>
<!--
配置一个切入点,匹配com.demo.hibernate.service包下 所有以Impl结尾的类的所有方法的执行
-->
<aop:pointcut id="leePointcut"
expression="execution(* com.demo.hibernate.service.*Impl.*(..))" />
<!-- 指定在txAdvice切入点应用txAdvice事务切面 -->
<aop:advisor advice-ref="txAdvice" pointcut-ref="leePointcut" />
</aop:config>
我也是管理在,业务层的
但是我看有人帖子是写到dao层的,有点迷惘了!
希望大家讨论下呗!
业务层,你们一般写逻辑吗?
还是将逻辑写到了dao层呢?
dao层只负责对数据库的增删改查 操作 不涉及逻辑