MyBatis中的MapperScan的作用是干什么的?

简介: MyBatis中的MapperScan的作用是干什么的?

@MapperScan 是 MyBatis Plus 提供的注解,它的作用是扫描指定包下的所有接口,将其注册成 MyBatis 的 Mapper。在 MyBatis Plus 中,它是用于替代原生 MyBatis 中 XML 配置文件中的 <mapper> 标签的一种方式,可以自动扫描指定包下的接口,无需手动在 XML 中配置。


具体来说,@MapperScan 注解通常用于配置 Spring 容器中的 Bean,以便 MyBatis Plus 能够自动识别并管理这些 Mapper 接口。


示例一下:

@Configuration
@MapperScan("com.example.mapper") // 指定要扫描的 Mapper 接口所在的包
public class MyBatisPlusConfig {
 
    // 其他配置...
 
}


@MapperScan 注解用于告诉 MyBatis Plus 扫描 com.example.mapper 包下的所有接口,并将其注册为 Spring Bean。


MyBatis Plus 是在 MyBatis 的基础上进行了功能扩展和增强的框架,因此,原生的 MyBatis 中并没有 @MapperScan 这个注解。在原生 MyBatis 中,需要在 XML 配置文件中使用 <mapper> 标签来配置 Mapper 接口的路径。


@MapperScan 就是 MyBatis Plus 提供的方便注解,用于简化 Mapper 接口的配置工作,使开发者能够更便捷地使用 MyBatis Plus 的功能~


相关文章
|
17天前
|
SQL 安全 Java
MyBatis(6)#{}和${}的区别
在MyBatis中,`#{}`和`${}`是用于在SQL语句中嵌入参数的两种方式。`#{}`用于预处理参数,可以防止SQL注入;而`${}`进行直接字符串替换,适用于动态插入表名或列名,但存在SQL注入风险。建议优先使用`#{}`,并在必要时谨慎使用`${}`。
|
3月前
|
SQL Java 数据库连接
在mybatis中#{}和${}的区别
在MyBatis中,使用#{}可以防止SQL注入,它通过预处理语句来安全地设置参数值,而${}会将传入的数据直接插入SQL语句中,不安全,通常用于传入数据库对象或在确保数据安全的情况下使用。
|
SQL XML Java
MyBatis配置中的#「」和$「」有什么区别?
Mybatis提供到的#号和$号,都是实现动态SQL的一种方式,通过这两种方式把参数传递到XML之后,在执行操作之前,Mybatis会对这两种占位符进行动态解析。
118 0
|
6月前
|
SQL Java 数据库连接
Mybatis中#{}和${}的区别
Mybatis中#{}和${}的区别
45 0
|
6月前
|
Java 数据库连接 数据库
Mybatis【第一个 Mybatis 程序】
Mybatis【第一个 Mybatis 程序】
|
11月前
|
SQL XML Java
Mybatis中#{}与${}的区别
Mybatis中#{}与${}的区别
52 0
|
SQL Java 数据库连接
Mybatis中#和$的区别
$将传入的数据直接显示生成在sql中。如:order by $user_id$,如果传入的值是111,那么解析成sql时的值为order by user_id, 如果传入的值是id,则解析成的sql为order by id.
|
SQL 存储 缓存
mybatis中#{}和${}的区别
mybatis中#{}和${}的区别
184 0
mybatis中#{}和${}的区别
|
SQL Java 数据库连接
Mybatis中的#与$的区别
Mybatis中的#与$的区别
91 0
|
SQL Java 数据库连接
mybatis中的#{}和${}的区别
mybatis中的#{}和${}的区别
111 0
mybatis中的#{}和${}的区别