有些道理,总要在碰得鼻青脸肿以后才会明白。有些情感,总要到无法挽回以后才去珍惜。人生太多的悲哀与不幸,都是因为自己眼高手低造成的
仅适用于新手学习
mapper-locations
顾名思义是一个定义mapper位置的属性
在yml或properties下配置,作用是实现mapper接口配置见mapper和接口的绑定,将mapper.xml放入容器中代表xml存在。
什么时候使用:
命名不同 或 所在路径不同时使用 (如果相同则不用配置,配置也不生效)
见下图:
@Mapper,@MapperScan
使用Mybatis持久层框架来操作数据库时,配置@Mapper或者@MapperScan的作用是将Mapper交给Spring容器进行管理
使用@Mapper的话:粒度更细,只是需要在每个Mapper上面都加上该注解,较为繁琐
使用@MapperScan则只需要在启动类上增加该注解,配置Mapper路径即可实现所有Mapper的容器注入
总结:@Mapper和@MapperScan仅需要配置一个即可(偏向于@MapperScan)
如果resources下的mapper.xml和src下的mapper路径相同则不用配置mapper-locations否则需要配置mapper-locations,如果不配置则会提示在mapper绑定mapper.xml时找不到对应的mapper