首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用AspectJ设置AspectJ框架@Transactional

如何用AspectJ设置AspectJ框架@Transactional
EN

Stack Overflow用户
提问于 2010-02-03 14:03:24
回答 3查看 19.7K关注 0票数 9

我想使用spring-aspects来使我的方法是事务性的,但是不使用Spring (Spring可以很好地处理:<tx:annotation-driven/>)。我正在使用Maven来管理我的项目。

是否有一种方法可以在我的项目类上进行编译时编织,以便“它们是Transactional”。我试着使用Mojo的AspectJ Maven插件,但是没有任何好的结果。

请帮帮忙。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-02-06 20:40:51

我想通了。Maven插件工作正常,但问题在于我的spring配置:我有:

代码语言:javascript
复制
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
    <property name="entityManagerFactory" ref="entityManagerFactory"/>
</bean>
<tx:annotation-driven transaction-manager="transactionManager"/>

我需要的是:

代码语言:javascript
复制
<bean id="transactionManager"   class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory"/>
</bean>
<bean class="org.springframework.transaction.aspectj.AnnotationTransactionAspect" factory-method="aspectOf">
    <property name="transactionManager" ref="transactionManager"/>
</bean>

现在它很好用。我的“事务处理方法”的性能得到了改进,这也是我所追求的。

下面是我的maven aspectj插件配置:

代码语言:javascript
复制
<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>aspectj-maven-plugin</artifactId>
    <version>1.3</version>
    <configuration>
        <aspectLibraries>
            <aspectLibrary>
                <groupId>org.springframework</groupId>
                <artifactId>spring-aspects</artifactId>
            </aspectLibrary>
       </aspectLibraries>
        <source>1.5</source>
        <showWeaveInfo>true</showWeaveInfo>
    </configuration>
    <executions>
        <execution>
            <goals>
                <goal>compile</goal>
            </goals>
        </execution>
    </executions>
</plugin>

希望这能帮上忙。

票数 5
EN

Stack Overflow用户

发布于 2013-05-29 14:55:12

也许你可以试试这个:

代码语言:javascript
复制
<tx:annotation-driven transaction-manager="transactionManager" mode="aspectj"/>
票数 4
EN

Stack Overflow用户

发布于 2015-11-26 15:29:10

下面是我给出的关于如何在java config中进行相同操作的答案的链接:

Spring @Transactional同时作为动态Jdk代理和aspectj方面应用

希望它能帮上忙

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2192410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档