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

  • 相关阅读:
    受益一生的15个学习习惯
    如何在工作的头三年里让自己变得强大
    linux定时执行脚本
    SpringMVC基础入门
    Spring与Quartz的整合实现定时任务调度[转]
    强肝保肝养肝4大食物
    Spring官网jar包下载方法
    tomcat管理端的页面安全措施
    Struts2 Action 动态传参数
    Java之控制反转和依赖注入
  • 原文地址:https://www.cnblogs.com/mythdoraemon/p/7417687.html
Copyright © 2011-2022 走看看