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的内部知识

  • 相关阅读:
    思路
    结合BeautifulSoup和hackhttp的爬虫实例
    hackhttp模板的介绍
    beauifulsoup模块的介绍
    php api_token 与 user_token 简析
    打造属于自己的火狐插件浏览器
    提高记忆力的习惯
    浏览器允许的并发请求资源数是什么意思?
    awk 进阶,百万行文件取交集
    ubuntu-docker入门到放弃(七)Dockerfile简介
  • 原文地址:https://www.cnblogs.com/mythdoraemon/p/7417687.html
Copyright © 2011-2022 走看看