解决service层无法注入
Posted 张亚南
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决service层无法注入相关的知识,希望对你有一定的参考价值。
练手时发现个问题,路径404,各种检查发现,多加了一层<context:component-scan base-package="com.yanan.controller"/>写成了<context:component-scan base-package="com.yanan.*.controller"/>
解决后,发现service注入失败
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.yanan.service.UserService.getListUsers
排查发现,扫描时
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.yanan.mapper"/>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
</bean>成功
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.yanan.*"/>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
</bean>失败
由此可见,扫描时*不是万能的,尽量指明具体包。
搭建环境是springmvc+mybatis+maven多模块。或许多模块下报的命名有关?还是本身扫描的包不能太宽泛?理解不深,请各位读者多多指教
以上是关于解决service层无法注入的主要内容,如果未能解决你的问题,请参考以下文章
java定时器无法自动注入的问题解析(原来Spring定时器可以这样注入service)
quartz整合spring框架service层对象注入为null解决方案
SpringBoot中普通类无法注入service的解决方案