@Mapper 和@MapperScan


之前是,直接在Mapper类上面添加注解@Mapper,这种方式要求每一个mapper类都需要添加此注解,麻烦。

 

通过使用@MapperScan可以指定要扫描的Mapper类的包的路径,比如:

@SpringBootApplication
@MapperScan("com.lz.water.monitor.mapper")
// 添加对mapper包扫描
public class Application {


public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}

}

@Mapper的作用

网上查到以下这三个作用,但是目前好像只有第一种被用到,后面2种网上说的都不很很清晰,主要作用还是注入成bean

1:为了把mapper这个DAO交給Spring管理 http://412887952-qq-com.iteye.com/blog/2392672

在之前的文章中,我们定义DemoMapper类,但是并没有在该类上定义类似@Service或者@Controller之类的注解,那么为什么可以被Spring管理呢?

 

(1)方式一:使用@Mapper注解

       为了让DemoMapper能够让别的类进行引用,我们可以在DemMapper类上添加@Mapper注解:

Java代码  
  1. @Mapper  
  2. public interface DemoMapper {  
  3.     @Insert("insert into Demo(name) values(#{name})")  
  4.     @Options(keyProperty="id",keyColumn="id",useGeneratedKeys=true)  
  5.     public void save(Demo demo);  
  6. }  

 

 

2:为了不再写mapper映射文件 https://blog.csdn.net/phenomenonstell/article/details/79033144

3:为了给mapper接口 自动根据一个添加@Mapper注解的接口生成一个实现类 http://www.tianshouzhi.com/api/tutorials/mapstruct/292


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM