@Mapper 与 @MapperScan 的区别
文章目录
- 1、@Mapper
- 2、@MapperScan
- 2.1、@MapperScan 支持扫描多个包
- 2.2、 @MapperScan 支持表达式,扫描包和其子包中的类
- 3、总结:
1、@Mapper
作用:用在接口类上,在编译之后会生成相应的接口实现类
位置:对应的某个接口类上面
@Mapper
package com.aop8.demo.mapper;public interface EmployeeMapper {public Employee getEmpById(Integer id);public void insertEmp(Employee employee);
}
如果每个接口类 都要 @Mapper 注解,是重复而无聊的工作,解决这个问题用 @MapperScan
。
2、@MapperScan
作用:扫描指定包下所有的接口类,然后所有接口在编译之后都会生成相应的实现类
位置:是在 SpringBootApplication
启动类上面添加 。
接口类
package com.aop8.demo.mapper;public interface EmployeeMapper {public Employee getEmpById(Integer id);public void insertEmp(Employee employee);
}
EmployeeMapper.xml
省略…
mybatis 相关的全局配置 省略…
SpringBootApplication 启动类
@MapperScan("com.aop8.demo.mapper")
@SpringBootApplication
public class SpringBootApplication {public static void main(String[] args) {SpringApplication.run(SpringBootApplication.class, args);}
}
SpringBootApplication 上添加 @MapperScan("com.aop8.demo.mapper")
注解,会扫描 com.aop8.demo.mapper
包下面所有的接口类,在编译之后都会生成相应的实现类。
2.1、@MapperScan 支持扫描多个包
@MapperScan 也支持多个包的扫描。
@MapperScan({"com.aop8.emp.mapper","com.aop8.dep.mapper"})
@SpringBootApplication
public class SpringBootApplication {public static void main(String[] args) {SpringApplication.run(SpringBootApplication.class, args);}
}
2.2、 @MapperScan 支持表达式,扫描包和其子包中的类
@SpringBootApplication
@MapperScan({"com.aop8.*.mapper","com.baidu.*.mapper"})
public class SpringBootApplication { public static void main(String[] args) { SpringApplication.run(SpringBootApplication.class, args); }
}
3、总结:
@Mapper
是对单个接口类的注解。单个操作。
@MapperScan
是对整个包下的所有的接口类的注解。是批量的操作。使用 @MapperScan
后,接口类 就不需要使用 @Mapper
注解。
@Mapper 与 @MapperScan 的区别相关推荐
- @Mapper,@MapperScan与@Repository区别
从mybatis3.4.0开始加入了@Mapper注解,它可以在编译之后自动生成相应的接口实现类,不用再写如下图所示的mapper映射文件. 用@Mapper直接在接口中写 ,编译时自动生成实现类,具 ...
- mybatis注解之@Mapper和@MapperScan的使用
+ 目录 mybatis注解之@Mapper和@MapperScan 方式一:使用@Mapper注解 方式二:使用@MapperScan注解 @MapperScan和@Mapper区别及理解 作用 扫 ...
- springboot整合mybatisplus中@Mapper与@MapperScan的使用
一.@Mapper与@MapperScan不可同时使用 二.@Mapper用于注解单个mapper接口 三.@Mapper Scan用于批量注解Mapper接口 四.@Mapper不起作用时,因为缺少 ...
- spring boot 中@Mapper和@Repository的区别
一:前言 @Mapper和@Repository是常用的两个注解,两者都是用在dao上,两者功能差不多,容易混淆,有必要清楚其细微区别: 二:区别 @Repository需要在Spring中配置扫描地 ...
- 注解@Mapper、@MapperScan
1.@Mapper注解: 作用:在接口类上添加了@Mapper,在编译之后会生成相应的接口实现类 添加位置:接口类上面 @Mapper public interface UserDAO {//代码 } ...
- 7、注解@Mapper、@MapperScan
1.@Mapper注解: 作用:在接口类上添加了@Mapper,在编译之后会生成相应的接口实现类 添加位置:接口类上面 @Mapper public interface UserDAO {//代码 } ...
- @Mapper、@MapperScan详解
1.1 @Mapper注解: 作用:在接口类上添加了@Mapper,在编译之后会生成相应的接口实现类 添加位置:接口类上面 @Mapper public interface UserDAO {//代码 ...
- @Mapper和@Repository的区别
1.相同点 @Mapper和@Repository都是作用在dao层接口,使得其生成代理对象bean,交给spring 容器管理,对于mybatis来说,都可以不用写mapper.xml文件 2.不同 ...
- MyIbatis :不使用XML和注解@Mapper以及MapperScan
1.美图 2.概述 一种操作方法 3.配置
最新文章
- 自动化运维工具Ansible详细部署
- Kafka文件存储机制那些事
- 小余学调度:学习记录(2022年1月)
- 他读博期间发表3篇Science,28岁任武大教授,35岁入“杰青”名单,让人叹服!...
- 初学c#读书笔记(一)--c#和.NET Framework
- bme280 环境传感器开发板_半导体所在柔性湿度传感器与非接触控制方面取得进展...
- 前腾讯AI Lab主任张潼加盟创新工场,出任港科大创新工场联合实验室主任
- 线性回归和逻辑回归的区别_Spark实现线性回归与逻辑回归算法
- P3986 斐波那契数列
- 解决SVN403问题
- NYOJ517 最小公倍数
- 如何使用c语言制作微信小程序,不懂代码如何制作微信小程序?微信小程序的步骤?...
- MAC中安装Navicat Premium
- 18124 N皇后问题
- 寻找故障检测相关论文的期刊
- 麒麟990银河麒麟SP1升级补丁(0709、1020)升级到(1228)
- 辞职犹豫不决怎么办?遇到这五种心理那就辞吧
- Android 外挂--- 微信自动聊天
- C++打造植物大战僵尸辅助!附完整项目源码
- pinyin4J一款非常好用的汉字和拼音转换的插件
热门文章
- 互动媒体一个赶鸭子上架的忘了很久的作业
- 快速入睡10个小妙招,这些助眠产品帮你一招入睡
- Windows计划任务管理
- 「PAT乙级真题解析」Basic Level 1089 狼人杀-简单版 (问题分析+完整步骤+伪代码描述+提交通过代码)
- 金仓数据库KingbaseES plpgsql 编译执行
- Spring 学习 day3 : AOP,Spring中JdbcTemplate的使用
- python绘制太阳系_使用 Python 来简单的动态模拟一下太阳系的运转
- 我讨厌计算机作文500,我讨厌的一个人
- LiveNVR视频流媒体服务器软件支持配置通道视频宽、视频高、视频码率降低码流输出视频直播流
- Python随机数,函数