当前位置:实例文章 » JAVA Web实例» [文章]Mybatis-Plus(二)--Mybatis-Plus方法大全

Mybatis-Plus(二)--Mybatis-Plus方法大全

发布人:shili8 发布时间:2025-01-31 01:17 阅读次数:0

**Mybatis-Plus(二)--Mybatis-Plus方法大全**

在上一篇文章中,我们已经介绍了Mybatis-Plus的基本概念、配置以及使用方法。今天我们将继续深入探讨Mybatis-Plus提供的各种方法,帮助你更好地掌握这款强大的ORM框架。

###1. 基础方法####1.1 `selectOne()`

`selectOne()` 方法用于从数据库中查询一个对象。它会根据你的映射文件配置,自动将结果集转换为Java对象。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT * FROM user WHERE id = #{id}")
 User selectOne(@Param("id") Long id);
}


####1.2 `selectList()`

`selectList()` 方法用于从数据库中查询多个对象。它与 `selectOne()` 类似,但返回的是一个集合。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT * FROM user WHERE id = #{id}")
 List selectList(@Param("id") Long id);
}


####1.3 `selectMap()`

`selectMap()` 方法用于从数据库中查询多个对象,并将结果集转换为一个映射。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT * FROM user WHERE id = #{id}")
 Map selectMap(@Param("id") Long id);
}


####1.4 `selectCount()`

`selectCount()` 方法用于从数据库中查询一个对象的数量。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT COUNT(*) FROM user WHERE id = #{id}")
 int selectCount(@Param("id") Long id);
}


###2. 条件方法####2.1 `selectOne()`

`selectOne()` 方法用于从数据库中查询一个对象,根据条件。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT * FROM user WHERE id = #{id} AND name = #{name}")
 User selectOne(@Param("id") Long id, @Param("name") String name);
}


####2.2 `selectList()`

`selectList()` 方法用于从数据库中查询多个对象,根据条件。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT * FROM user WHERE id = #{id} AND name = #{name}")
 List selectList(@Param("id") Long id, @Param("name") String name);
}


####2.3 `selectMap()`

`selectMap()` 方法用于从数据库中查询多个对象,根据条件,并将结果集转换为一个映射。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT * FROM user WHERE id = #{id} AND name = #{name}")
 Map selectMap(@Param("id") Long id, @Param("name") String name);
}


####2.4 `selectCount()`

`selectCount()` 方法用于从数据库中查询一个对象的数量,根据条件。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT COUNT(*) FROM user WHERE id = #{id} AND name = #{name}")
 int selectCount(@Param("id") Long id, @Param("name") String name);
}


###3. 分页方法####3.1 `selectPage()`

`selectPage()` 方法用于从数据库中查询多个对象,根据条件,并分页。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT * FROM user WHERE id = #{id} AND name = #{name}")
 Page selectPage(@Param("id") Long id, @Param("name") String name, @Param("page") Pageable pageable);
}


####3.2 `selectMapsPage()`

`selectMapsPage()` 方法用于从数据库中查询多个对象,根据条件,并分页,将结果集转换为一个映射。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT * FROM user WHERE id = #{id} AND name = #{name}")
 Page> selectMapsPage(@Param("id") Long id, @Param("name") String name, @Param("page") Pageable pageable);
}


####3.3 `selectCount()`

`selectCount()` 方法用于从数据库中查询一个对象的数量,根据条件。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Select("SELECT COUNT(*) FROM user WHERE id = #{id} AND name = #{name}")
 long selectCount(@Param("id") Long id, @Param("name") String name);
}


###4. 批量方法####4.1 `insertBatch()`

`insertBatch()` 方法用于批量插入多个对象。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Insert("INSERT INTO user (id, name) VALUES (#{id}, #{name})")
 int insertBatch(@Param("list") List list);
}


####4.2 `updateBatch()`

`updateBatch()` 方法用于批量更新多个对象。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Update("UPDATE user SET name = #{name} WHERE id = #{id}")
 int updateBatch(@Param("list") List list);
}


####4.3 `deleteBatch()`

`deleteBatch()` 方法用于批量删除多个对象。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Delete("DELETE FROM user WHERE id = #{id}")
 int deleteBatch(@Param("list") List list);
}


###5. 批量方法(条件)

####5.1 `insertBatch()`

`insertBatch()` 方法用于批量插入多个对象,根据条件。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Insert("INSERT INTO user (id, name) VALUES (#{id}, #{name})")
 int insertBatch(@Param("list") List list, @Param("condition") String condition);
}


####5.2 `updateBatch()`

`updateBatch()` 方法用于批量更新多个对象,根据条件。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Update("UPDATE user SET name = #{name} WHERE id = #{id}")
 int updateBatch(@Param("list") List list, @Param("condition") String condition);
}


####5.3 `deleteBatch()`

`deleteBatch()` 方法用于批量删除多个对象,根据条件。

java// UserMapper.javapublic interface UserMapper extends Mapper {
 @Delete("DELETE FROM user WHERE id = #{id}")
 int deleteBatch(@Param("list") List list, @Param("condition") String condition);
}


以上就是Mybatis-Plus提供的各种方法的介绍。这些方法可以帮助你更好地使用Mybatis-Plus,提高开发效率和代码质量。

其他信息

其他资源

Top