博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Springboot中@Mapper和@Repository的区别
阅读量:4094 次
发布时间:2019-05-25

本文共 732 字,大约阅读时间需要 2 分钟。

@Mapper和@Repository是常用的两个注解,两者都是用在dao层,两者功能差不多

区别:

@Repository需要在Spring中配置扫描地址,然后生成Dao层的Bean才能被注入到Service层中。如下,在启动类中配置扫描地址:

@SpringBootApplication   //添加启动类注解@MapperScan("com.xz.springboot.mapper")  //配置mapper扫描地址public class application{    public static   void main(String[] args)    {        SpringApplication.run(application.class,args);    }}

@Mapper不需要配置扫描地址,通过xml里面的namespace里面的接口地址,生成了Bean后注入到Service层中。也就是@Repository多了一个配置扫描地址的步骤

补充:

如果在接口添加上@Mapper,然后再在 xml中的namespace指向mapper,那么spring就能动态生成一个Mapper的bean,然后你在serviceImpl中的
@Autowired
pravate XXXMapper xxmapper;
就会被这个bean注进去。

如果在Dao层中加了@Repository,那么在spring的扫包机制下,也会生成这个dao的bean,注入你serviceImpl中的

@Autowired
private xxxDao xxxdao;

最后,一般不用@Repository,在spring boot中通常用@Mapper

转载地址:http://urtii.baihongyu.com/

你可能感兴趣的文章
实现高性能纠删码引擎 | 纠删码技术详解(下)
查看>>
scala(1)----windows环境下安装scala以及idea开发环境下配置scala
查看>>
zookeeper(3)---zookeeper API的简单使用(增删改查操作)
查看>>
zookeeper(4)---监听器Watcher
查看>>
zookeeper(2)---shell操作
查看>>
mapReduce(3)---入门示例WordCount
查看>>
hbase(3)---shell操作
查看>>
hbase(1)---概述
查看>>
hbase(5)---API示例
查看>>
SSM-CRUD(1)---环境搭建
查看>>
SSM-CRUD(2)---查询
查看>>
SSM-CRUD (3)---查询功能改造
查看>>
Nginx(2)---安装与启动
查看>>
springBoot(5)---整合servlet、Filter、Listener
查看>>
C++ 模板类型参数
查看>>
C++ 非类型模版参数
查看>>
设计模式 依赖倒转原则 & 里氏代换原则
查看>>
DirectX11 光照
查看>>
图形学 图形渲染管线
查看>>
DirectX11 计时和动画
查看>>