掃二維碼與項(xiàng)目經(jīng)理溝通
我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
MyBatis 常用注解

MyBatis 是一個(gè)優(yōu)秀的持久層框架,它支持定制化 SQL、存儲(chǔ)過程以及高級(jí)映射,MyBatis 消除了幾乎所有的 JDBC 代碼和參數(shù)的手工設(shè)置以及結(jié)果集檢索,MyBatis 可以使用簡單的 XML 或注解來配置和映射原生類型、接口和 Java 的 POJO(Plain Old Java Objects,普通的 Java 對(duì)象)為數(shù)據(jù)庫中的記錄。
1. @Select
@Select 注解用于指定查詢語句,可以用于 Mapper 接口中的方法上。
示例:
@Select("SELECT * FROM user WHERE id = #{id}")
User selectUserById(int id);
2. @Insert
@Insert 注解用于指定插入語句,可以用于 Mapper 接口中的方法上。
示例:
@Insert("INSERT INTO user (name, age) VALUES (#{name}, #{age})")
int insertUser(User user);
3. @Update
@Update 注解用于指定更新語句,可以用于 Mapper 接口中的方法上。
示例:
@Update("UPDATE user SET name = #{name}, age = #{age} WHERE id = #{id}")
int updateUser(User user);
4. @Delete
@Delete 注解用于指定刪除語句,可以用于 Mapper 接口中的方法上。
示例:
@Delete("DELETE FROM user WHERE id = #{id}")
int deleteUser(int id);
5. @Results
@Results 注解用于指定查詢結(jié)果的映射關(guān)系,通常與 @Select 注解一起使用。
示例:
@Select("SELECT * FROM user")
@Results({
@Result(property = "id", column = "id"),
@Result(property = "name", column = "name"),
@Result(property = "age", column = "age")
})
List selectAllUsers();
6. @Result
@Result 注解用于指定查詢結(jié)果的映射關(guān)系,通常與 @Results 注解一起使用。
示例:
@Result(property = "id", column = "id")
7. @ResultMap
@ResultMap 注解用于指定查詢結(jié)果的映射關(guān)系,可以將多個(gè) @Result 組合在一起。
示例:
@ResultMap("userResultMap")
@Select("SELECT * FROM user")
List selectAllUsers();
@ResultMap(name = "userResultMap", type = User.class)
@Result(property = "id", column = "id")
@Result(property = "name", column = "name")
@Result(property = "age", column = "age")
8. @Param
@Param 注解用于指定方法參數(shù)的名稱,以便在 SQL 語句中使用。
示例:
@Select("SELECT * FROM user WHERE id = #{userId}")
User selectUserById(@Param("userId") int id);

我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流