关于Mapper.java在调⽤的时候@Autowired报错的解决过程先上解决办法
<bean class="batis.spring.mapper.MapperScannerConfigurer">
<description>扫描Mapper</description>
<property name="basePackage" value="com.dl.jly.Mapper" />
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
</bean>
问题发⽣背景:
1.⼀个spring-mvc的项⽬⾥⾯,没有⽤mapper.l这种⽅式来做数据操作。⽽是⽤的
SqlSessionTemplate直接传递调⽤⽅法和参数进⾏的。如下
public Object getCollectItemList(Map<String, Object> map)throws Exception{
resource和autowired注解的区别
return service.findForList("CollectItemList", map);
}
这真的是⽆⽐蛋疼的使⽤⽅法。
2.于是我⽤了某个springboot框架⾥⾯的代码⽣成器⽣产了⼀票代码,想放进来⽤舒服的⽅式进⾏开发
结果在Service中调⽤mapper.java的时候,@Autowired报错了。
public class APIService
{
Logger logger = Class());
@Resource(name = "baseDao")
private IbaseDao service;
@Autowired
private TokenMapper tokenMapper;
3.考虑到以前这套代码并没有使⽤mapper.java,所以在⽹上了⼀下扫描mapper⽬录的配置 ,解决!
添加
以前的项⽬⾥⾯,⽤@Autowired的时候,总会有红⾊波浪线,虽然不影响编译和使⽤,但是很影响开发的⼼情。
这次调查中顺便就到了解决办法。
在Mapper⾥⾯加注解@Repository就可以解决了。
@Repository
public interface YbptTokenMapper

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。