问题
分析
看到这种错误想到的就是包扫描开启了没有?
解决
首先注意看一下包名写错没,如果没写错看一下包扫描开启没
如果是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:p="http://www.springframework.org/schema/p"
xmlns:c="http://www.springframework.org/schema/c"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:apo="http://www.springframework.org/schema/aop"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
<!--Spring 包扫描-->
<context:component-scan base-package="com.xxx"/>
</beans>
如果是配置类,看一下扫描注解写上了没?
@Configuration //方便spring识别这是一个配置类,可以不加
@ComponentScan("com.xxx") //包扫描
@EnableAspectJAutoProxy(proxyTargetClass = true) //自动装载
public class SpringConfig {
}
看清楚ComponentScan注解才是扫描注解,不是Conponent,Conponent注解主要是用于标记,告诉Spring当前类需要由容器实例化bean并放入容器中。