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
####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,提高开发效率和代码质量。