由于我比较懒,所以对于mybatis-generator工具有着很大的喜欢,我感觉它既可以偷懒,又可以提高写代码的效率,对于比较简单的sql查询语句,使用它就足够了,但是我今天遇到了一个问题,就是为什么我们生成的mapper代码不用写@Mapper注解在接口上,也可以注册到spring的IOC容器中。
这是因为我们使用了@MapperScan注解

那么@Mapper注解与@MapperScan注解有什么关联呢?
	1. 使用@Mapper,最终Mybatis会有一个拦截器,会自动的把@Mapper注解的接口生成动态代理类。
	2. 使用@MapperScan配置一个或多个包路径,自动的扫描这些包路径下的类,自动的为它们生成动态代理类。
	3. @Mapper注解针对的是一个接口一个接口的使用,太麻烦了。
	4. @MapperScan注解针对的是一个或多个包中的所有接口,相比@Mapper注解来说非常简单。
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐