Mybatis SQL注解使用场景

MyBatis 提供了几种常用的注解,主要用于简化 XML 映射文件的编写,使得 SQL 查询和操作可以直接在 Java 接口中定义。下面列出了主要的注解以及它们在被调用时的写法示例:

1. @Select

@Select 注解用于执行查询操作,并将查询结果映射到指定的 Java 对象或基本数据类型。

@Select("SELECT * FROM users WHERE id = #{id}")
User getUserById(Long id);

2. @Insert

@Insert 注解用于执行插入操作,将 Java 对象的数据插入到数据库中。

@Insert("INSERT INTO users (id, username, password) VALUES (#{id}, #{username}, #{password})")
void insertUser(User user);

3. @Update

@Update 注解用于执行更新操作,更新数据库中已有的数据。

@Update("UPDATE users SET username = #{username}, password = #{password} WHERE id = #{id}")
void updateUser(User user);

4. @Delete

@Delete 注解用于执行删除操作,从数据库中删除指定的数据行。

@Delete("DELETE FROM users WHERE id = #{id}")
void deleteUserById(Long id);

5. @ResultMap

@ResultMap 注解用于引用 XML 映射文件中定义的 resultMap,将查询结果映射到 Java 对象。

@Select("SELECT * FROM users")
@ResultMap("userResultMap")
List<User> getAllUsers();

6. @Results 和 @Result

@Results@Result 注解结合使用,定义查询结果到 Java 对象的映射关系。

@Results({
   
    @Result(property = "id", column = "user_id"),
    @Result(property = "username", column = "user_name"),
    @Result(property = "password", column = "user_password")
})
@Select("SELECT user_id, user_name, user_password FROM users WHERE id = #{id}")
User getUserById(Long id);

7. @Param

@Param 注解用于给 SQL 查询或操作方法的参数命名,以便在 SQL 语句中引用。

@Select("SELECT * FROM users WHERE username = #{username} AND password = #{password}")
User getUserByUsernameAndPass
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值