zoukankan      html  css  js  c++  java
  • 添加事务后 org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type available

    今天遇到了一个奇怪的问题   在没添加事务之前  所有的代码都是好的 , 当我添加了事务之后, 代码报错

    org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type available

    ApplicationContext:

     <!-- 配置事务 -->
     <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
      <property name="dataSource" ref="dataSource"></property>
     </bean>
     
    <!-- 开启事务注解注入 -->
     <tx:annotation-driven transaction-manager="transactionManager"/>

    BookShopServiceImpl

     @Transactional
     @Override
     public void purchase(String isbn, String username) {
    //  1.获取书的单价
      int price = bookShopDao.findBookPriceByIsbn(isbn);
    //  2.获取书的库存
      bookShopDao.updateBookStock(isbn);
    //  3.更新用户信息
      bookShopDao.updateAccount(username, price);
     }

    BookShopDaotest:

    红色部分为添加的代码  , 然后机器认为有两个BookShopServiceImpl 类型的文件,但事实上只有一个。 

      bookShopDao = context.getBean(BookShopDaoImpl.class);
      bookShopService = (BookShopService) context.getBean("bookShopService");

    之前是使用的是:

    getBean(Class<BookShopDaoImpl> requiredType)

    现在使用的是:

    getBean(String name) throws BeansException最后在BookShopDao 中重新进行了Bean的获取  换了一种方式  用name的方式获取  而不是使用Class的形式

    这样子机器就认识了。

    还是需要自己去多学习下Spring的内部知识

  • 相关阅读:
    Release COM Objects in AE
    图像相关系数
    Geoprocessor edit the featureclasses in memmory
    NetLogo AStar path finding
    IDL+C#三种调用方式
    Dictionary is not like a array
    C# DataGridView 禁止列排序
    工作总结
    (转)常见数据库设计(1)——字典数据
    碎碎念(3)
  • 原文地址:https://www.cnblogs.com/mythdoraemon/p/7417687.html
Copyright © 2011-2022 走看看