mybatis plus 自定义sql
时间: 2025-01-10 18:47:39 浏览: 54
### MyBatis Plus 中编写自定义 SQL
在 MyBatis Plus 中,可以方便地通过 Mapper 接口来编写自定义 SQL 语句。对于 `User` 实体类以及对应的数据库表 `user` ,如果要执行基于名称模糊匹配的查询,则可以在相应的 Mapper 接口中声明带有特定注解的方法。
```java
@Mapper
public interface UserMapper extends BaseMapper<User> {
@Select("SELECT * FROM user WHERE name LIKE CONCAT('%', #{name}, '%')")
List<User> selectByName(String name);
}
```
上述代码展示了如何利用 `@Select` 注解指定一条 SELECT 类型的 SQL 查询语句[^1]。除了 `@Select` 外,还有其他类型的注解可用于不同目的:
- 使用 `@Insert` 来表示插入操作;
- 利用 `@Update` 进行更新记录的操作;
- 应用 `@Delete` 完成删除功能;
当涉及到更复杂的业务逻辑时,比如需要先对数据集做额外处理再进行分页展示的情况下,建议采用服务层分页的方式而不是单纯依赖于数据库端的 LIMIT 子句实现分页效果[^2]。
为了更好地支持动态构建 SQL 或者更加灵活地控制查询行为,在 MyBatis Plus 中还可以借助 XML 文件配置形式来自定义 SQL 片段,并将其应用于多个地方重用。这种方式不仅提高了可读性和维护性,而且能够满足更为复杂的应用场景需求。
阅读全文
相关推荐


















