以前一直用的eclipse写代码,今天写用idea写了下代码,结果一直报错,错误如下:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void com.xdw.manage.controller.UserController.setUserService(com.xdw.manage.service.UserService); nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userServiceImpl': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.xdw.manage.mapper.UserMapper com.xdw.manage.service.UserServiceImpl.userMapper; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.xdw.manage.mapper.UserMapper] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1202)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:302)at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298)at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:762)at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:757)at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:480)at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:663)at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:629)at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:677)at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:548)at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:489)at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:136)at javax.servlet.GenericServlet.init(GenericServlet.java:160)at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280)at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193)at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1088)at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5176)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5460)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)at java.util.concurrent.FutureTask.run(FutureTask.java:266)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:748)
Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void com.xdw.manage.controller.UserController.setUserService(com.xdw.manage.service.UserService); nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userServiceImpl': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.xdw.manage.mapper.UserMapper com.xdw.manage.service.UserServiceImpl.userMapper; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.xdw.manage.mapper.UserMapper] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:646)at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87)at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:331)... 29 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userServiceImpl': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.xdw.manage.mapper.UserMapper com.xdw.manage.service.UserServiceImpl.userMapper; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.xdw.manage.mapper.UserMapper] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1202)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:302)at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298)at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1127)at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1051)at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:949)at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:603)... 31 more
Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.xdw.manage.mapper.UserMapper com.xdw.manage.service.UserServiceImpl.userMapper; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.xdw.manage.mapper.UserMapper] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:558)at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87)at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:331)... 42 more
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.xdw.manage.mapper.UserMapper] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:1308)at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1054)at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:949)at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:530)... 44 more

然后我就在网上搜索各种解决办法,尝试了好几种方法,无果,求助大神们,有谁解决了这种问题的?

我把我的程序的代码贴出来吧

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:context="http://www.springframework.org/schema/context"xmlns:aop="http://www.springframework.org/schema/aop"xmlns:tx="http://www.springframework.org/schema/tx"xmlns:util="http://www.springframework.org/schema/util"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsdhttp://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsdhttp://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsd"><!--1.配置包扫描  --><context:component-scan base-package="com.xdw.manage"/><!--2.配置数据源  --><!--2.1导入pro配置文件  --><!-- <context:property-placeholder location="classpath:/property/*.properties"/> --><!-- private Resource[] locations; --><bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property name="locations"><list><value>classpath:/property/jdbc.properties</value></list></property></bean><!--2.2配置数据源  --><bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"><property name="driverClassName" value="${jdbc.driver}"/><property name="url" value="${jdbc.url}"/><property name="name" value="${jdbc.username}"/><property name="password" value="${jdbc.password}"/></bean><!--3.配置事务控制  --><tx:annotation-driven/><!--3.1 定义事务管理器  --><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource"/></bean><!--3.2 定义事务策略propagation="REQUIRED" 执行该操作 必须添加事务propagation="SUPPORTS" 事务支持的,原来的操作有事务,则添加事务,原有的操作没有事务,则不添加事务propagation="NEVER"    从不添加事务propagation="REQUIRES_NEW"   都会创建一个新的事务read-only="true"       该操作只读--><tx:advice id="txAdvice" transaction-manager="transactionManager"><tx:attributes><tx:method name="save*"   propagation="REQUIRED"/><tx:method name="delete*" propagation="REQUIRED"/><tx:method name="update*" propagation="REQUIRED"/><tx:method name="find*"   propagation="SUPPORTS" read-only="true"/><tx:method name="*"       propagation="SUPPORTS" read-only="true"/></tx:attributes></tx:advice><!--3.3 定义事务切面(pointcut*, advisor*, aspect*)expression 切入点表达式within(包名.类名)  按类匹配  控制粒度 粗粒度execution(返回值类型 包名.类名.方法名(参数列表))--><aop:config><aop:pointcut expression="execution(* com.xdw.manage.service..*.*(..))" id="pc"/><aop:advisor advice-ref="txAdvice" pointcut-ref="pc"/></aop:config></beans>

applicationContext-mvc.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xmlns:mvc="http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/mvchttp://www.springframework.org/schema/mvc/spring-mvc-4.0.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsd"><!--开启mvc注解--><mvc:annotation-driven/><!--放行静态资源文件--><mvc:default-servlet-handler/><!--3.配置视图解析器  内部资源视图解析器作用:为返回页面拼接前缀和后缀      /WEB-INF    .jsp--><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/views/"/><property name="suffix" value=".jsp"/></bean><!--4.上传视图解析器--><!--4.添加文件上传视图解析器要求:bean的Id必须为multipartResolver--><bean id="multipartResolver"  class="org.springframework.web.multipart.commons.CommonsMultipartResolver"><!--上传量10M  --><property name="maxUploadSize" value="10485760"/><property name="defaultEncoding" value="utf-8"/></bean></beans>

applicationContext-mybatis.xml

<beans xmlns="http://www.springframework.org/schema/beans"xmlns:context="http://www.springframework.org/schema/context"xmlns:aop="http://www.springframework.org/schema/aop"xmlns:tx="http://www.springframework.org/schema/tx"xmlns:util="http://www.springframework.org/schema/util"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsdhttp://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsdhttp://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsd"><!--spring整合mybatis1.配置数据源2.导入mybatis自身配置文件3.导入映射文件4.配置别名包--><bean class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource"/><property name="configLocation"value="classpath:/mybatis/mybatis-config.xml"/><property name="mapperLocations"value="classpath*:com/xdw/manage/mapper/*.xml"/><property name="typeAliasesPackage"value="com.xdw.manage.pojo"/></bean><!--Spring为Mapper接口创建代理对象  --><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="basePackage" value="com.xdw.manage.mapper"/><property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" /></bean>

web.xml

<!DOCTYPE web-app PUBLIC"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN""http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://java.sun.com/xml/ns/javaee"xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"id="xdw-manage" version="2.5"><display-name>xdw-manage</display-name><servlet><servlet-name>springmvc</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!--配置springmvc配置文件  --><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:/spring/applicationContext*.xml</param-value></init-param><load-on-startup>1</load-on-startup></servlet><!--.do  .action路径:前缀型: /service/*    只要请求以service开头被前端控制器拦截后缀型: .do           请求拦截以.do结尾全路径: /servet/*.do  以service开头以.do结尾请求/*  不管请求是什么路径统统都拦截   请求/html/jsp/CSS/js/    规定:拦截请求 和静态资源   放行jsp等动态资源为restFul格式做准备--><servlet-mapping><servlet-name>springmvc</servlet-name><url-pattern>/</url-pattern></servlet-mapping><filter><filter-name>characterEncodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param></filter><filter-mapping><filter-name>characterEncodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list>
</web-app>

controller类

package com.xdw.manage.controller;import com.xdw.manage.pojo.User;
import com.xdw.manage.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;import java.util.List;
@Controller
public class UserController {@Autowiredprivate UserService userService;@RequestMapping("/find")public String findUser(Model model){List<User> userList = userService.findUserList();model.addAttribute("userList",userList);return "userList";}
}

实现类

package com.xdw.manage.service;import com.xdw.manage.mapper.UserMapper;
import com.xdw.manage.pojo.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;
@Service
public class UserServiceImpl implements UserService {@Autowiredprivate UserMapper userMapper;@Overridepublic List<User> findUserList() {return userMapper.findUserList();}
}

实在是不知道哪里出错了,纠结了一天了

问题解决了,居然是因为我在配置spring配置文件时将事务管理器的property中的ref写成了value,以后一定要注意这些细节

第一次用idea写SSM框架的项目就遇到自动注入失败的问题相关推荐

  1. ssm框架dao层接口无法自动注入问题

    这个问题实在奇葩,我也没看过框架源码,估计就算看了也看不懂,目前发现在dao层接口上不能使用@Component注解,但是可以使用@Repository,也可以啥注解都不加.根据目前的情况观察只要加上 ...

  2. SSM 框架 Maven项目整合实例

    2019独角兽企业重金招聘Python工程师标准>>> SSM 框架 Maven项目整合实例1: 转载学习:https://blog.csdn.net/Peng_Hong_fu/ar ...

  3. 基于SSM框架简易项目“书籍管理系统”,超详细讲解,附源码

    目录 我有话说: 1 项目简介 2 项目展示 2.1 首先创建数据库和表信息 2.2 预先准备操作 2.3 开始配置项目 2.4 开始web层 3 图片展示 4 附上源码文件(百度网盘): 我有话说: ...

  4. 云借阅图书管理系统[基于SSM框架的项目]

    前言 SSM框架本学期也是刚进行完答辩,在云借阅图书管理系统的基础功能上新增了一些功能用来作为SSM框架的大作业进行的答辩.也是对MyBatis框架.Spring框架.Spring MVC框架的注解开 ...

  5. 熟悉使用ssm框架完成项目

    羡慕那些一些博客就能写好多的人,总是能写的长篇大论的,而我就是简短的而且还伴随着语句不通顺等等,只写一点点,归根结底还是自己懒得写! 1.首先了解框架内容,拿到源码,先看配置文件 2.然后修改数据库建 ...

  6. 基于SSM框架的项目:图书管理系统

    目录: 1 总体要求 1.1 演示视频 2 数据库的创建 3 基本环境搭建 4 Mybatis 层编写 5 Spring 层编写 6 SpringMVC 层编写 6.1 配置文件的书写 6.2 逻辑功 ...

  7. 【SSM框架最新项目】搭建个人博客实例讲解

    项目介绍 本项目为个人博客项目,旨在对SSM的综合应用,提高大家对这三个框架的的基本使用能力,项目分为前台和后台,博客基本的功能齐全. 技术架构 Spring+SpringMVC+Mybatis+My ...

  8. 【总结】4S汽车维修管理系统ssm框架vuejs项目

    本系统包括: 汽车维修工单管理.结算工单管理.还车管理.基础数据.权限管理 和 统计报表 六个功能模块.另包括权限管理模块用于系统的用户.角色和相关权限. 术语定义 系统用户: XXX4S店员工. 客 ...

  9. ssm框架的项目中用户图片的上传功能

    后台管理的web项目中,需要完成图片的上传功能 工具准备:一.图片上传的必要JS文件:二:当前页面中JS重写提交图片的方法:三.后台接收和处理图片的方法 整体思路:一.HTML中添加文件上传按钮: 二 ...

最新文章

  1. 我也说说Emacs吧(6) - Lisp速成
  2. MindMotion MM32F3277 SoftI2C功能测试
  3. python基础:细节问题梳理
  4. resin管理后台登录配置
  5. 时间选择控件在不同场景下的应用
  6. weblogic 安装教程
  7. 易维帮助台:论工业产品售后服务升级转型的正确打开姿势
  8. csharp read excel file get sheetName list
  9. 斯坦福 CS183f YC 创业课 2017 资料整理
  10. 华为或正与联发科、紫光展锐就采购更多芯片事宜展开磋商
  11. python 生成器迭代器
  12. 使用JavaScript创建Table时,用cellSpacing而不是cellspacing
  13. ssh mysql视屏_ssh+mysql实现的Java web在线订电影票系统项目源码附带视频指导教程...
  14. 财务应付结算系统设计-发票(含账单发票差异调整)
  15. SAP中PR/PO创建技巧之缺省值个人设置
  16. STM32F407 ETR 计数程序
  17. 字符串字符数组 PTA 7-10 古风排版
  18. opengl android 纹理贴图 代码,Android 使用opengl es的纹理贴图白屏问题请教。
  19. TYPE-C接口设备OTG线(手机接OTG线的同时进行充电)
  20. Markdown-图片设置(大小,居中)

热门文章

  1. 网站运营的9个常用搜索技巧
  2. 学习管理系统五大好处
  3. 获取安卓手机中APP包名的几种方式
  4. RT_Thread自问自答
  5. L1-084 拯救外星人 C语言
  6. 蓝牙设备删除失败_这软件能让你的蓝牙耳机,用上AirPods的功能
  7. 任天堂switch lite和switch区别
  8. java mifare_java – 使用SCL010获取Mifare Ultralight的UID
  9. 要闻 | 人大金仓重磅亮相2022南京软博会
  10. Between Us 2 进化的史诗