SpringBoot Mapper扫描总结
·
@MapperScan使用介绍
在启动类上添加@MapperScan注解指定扫描的包,该包下的所有接口在编译之后都会生成相应的实现类
@SpringBootApplication
@MapperScan("com.lixianhe.mapper")
public class MpDemoApplication {
public static void main(String[] args) {
SpringApplication.run(MpDemoApplication.class, args);
}
}
使用@MapperScan注解多个包
@MapperScan({"com.kfit.demo","com.kfit.user"})
使用这种方式,我们通过@Autowired从Spring容器获取Bean的时候,会爆红,但是不影响使用,IDEA自己误判还未将对应的实例入IOC容器
在Mapper接口加上@Repository(加上为了欺骗IDEA),可去掉爆红
@Repository
public interface UserMapper extends BaseMapper<User>{
}
如果使用@Resource注解从Spring容器中获取Bean时,IDEA可以识别,不需要使用其他注解
public interface UserMapper extends BaseMapper<User>{
}
@Mapper
在每一个Mapper接口上加入此注解,不用在主启动类加MapperScan
总结
- 主启动类加@MapperScan,从IOC容器获取对象的时候使用@Autowired,每一个Mapper加@Repository
- 主启动类加@MapperScan,从IOC容器获取对象的时候使用@Resource
- 每个Mapper加@Mapper
更多推荐
所有评论(0)