疯狂

STANDING ON THE SHOULDERS OF GIANTS
posts - 481, comments - 486, trackbacks - 0, articles - 1
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

关于@Transactional和配置文件混用的问题

Posted on 2010-08-18 15:56 疯狂 阅读(1469) 评论(0)  编辑  收藏 所属分类: java databasequestionsspringhibernateweb
使用顺序:
1   <tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true" />

之后才是xml配置:
 2  <tx:advice id="txAdviceService" transaction-manager="transactionManager">
        <tx:attributes>
             <tx:method name="add*" read-only="false"/>
            <tx:method name="add*" read-only="false"/>
            <tx:method name="update*" read-only="false"/>
            <tx:method name="del*" read-only="false"/>
              <tx:method name="apply*" read-only="false"/>
            <tx:method name="*" read-only="true"/>
        </tx:attributes>
    </tx:advice>
    <aop:config>
           <aop:pointcut id="serviceMethods"
            expression="execution(* com.joe.service.*.*(..))"/>
        <aop:advisor advice-ref="txAdviceService" pointcut-ref="serviceMethods"/>
    </aop:config>
    
     <bean id="transactionManager"
        class="org.springframework.orm.hibernate3.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory"/>
    </bean>
如果写反会出现如果使用的
@Transactional的方法在  <tx:method name="*" read-only="true"/>
里面 就会发现没有可写事务 :
error:Write operations are not allowed in read-only mode (FlushMode.NEVER/MANUAL): Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker from transaction definition.

只有注册用户登录后才能发表评论。


网站导航: