为了账号安全,请及时绑定邮箱和手机立即绑定

Spring中使用事物时抛的错误

Spring中使用事物时抛的错误

lzjccc 2017-03-05 15:41:08
org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'org.springframework.transaction.interceptor.TransactionInterceptor#0' is expected to be of type 'org.aopalliance.aop.Advice' but was actually of type 'org.springframework.transapackage com.lzj.Spring_second.test3; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @Service("bookStoreServiceImpl") public class BookStoreServiceImpl implements BookStoreService { // 自动注入DAO(接口注入) @Autowired private BookStore bookStoreImpl; // 添加事物注解 @Transactional @Override public void purchaseBook(String userName,String bookName) { // 查看购买书的价格 int price = bookStoreImpl.getBookByName(bookName); // 更新库存 bookStoreImpl.updateBookStore(bookName); // 更新客户的钱 bookStoreImpl.updateCustomerMoney(userName, price); } }一添加@Transactional注解就抛上面的错误,好多人说是动态代理中抛出来的,但是我的Bean都是接口注入的也还是报错,下面是事物的相关配置,哪位大神帮忙看看,多谢!<!-- 配置自动扫描包 --> <context:component-scan base-package="com.lzj.Spring_second.test3"></context:component-scan> <!-- 引入外部数据 --> <context:property-placeholder location="classpath:com/lzj/Spring_second/test3/config/data.properties"/> <!-- 通过数据源连接数据库 --> <bean id="sqlConnctionDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="user" value="${user}"></property> <property name="password" value="${password}"></property> <property name="driverClass" value="${driverClass}"></property> <property name="jdbcUrl" value="${jdbcUrl}"></property> </bean> <!-- 配置事物管理器 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="sqlConnctionDataSource"></property> </bean> <!-- 启用事物管理器注解 --> <tx:annotation-driven transaction-manager="transactionManager"/>
查看完整描述

3 回答

已采纳
?
我是大树

TA贡献8条经验 获得超4个赞

一般是aopalliance-1.0.jar 和 aopalliance-alpha1.jar之间的冲突。将后者去掉。

查看完整回答
1 反对 回复 2017-03-05
  • lzjccc
    lzjccc
    好的,等我试试
  • lzjccc
    lzjccc
    是不是那个包不要也可以啊
  • lzjccc
    lzjccc
    aspectjweaver.jar,aspectjrt.jar这两个包什么关系啊?项目中只加前者也可以进行Aop编程
?
HansonQ

TA贡献223条经验 获得超56个赞

看看是不是jar包引入问题

查看完整回答
1 反对 回复 2017-03-05
  • 3 回答
  • 0 关注
  • 2049 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信