MyBatis-Plus提供了许多常用的注解,以下是其中一些常用的注解及其作用,同时也提供了代码举例:
- @TableName:用于标识实体类对应的数据库表名。
@TableName("user")
public class User {
//...
}
- @TableField:用于标识实体类中的字段与数据库表中的字段的对应关系。
public class User {
@TableField("user_name")
private String userName;
//...
}
3. @TableLogic:用于标识逻辑删除字段,当该字段的值为指定的逻辑删除值时,表示该记录已被删除
public class User {
@TableLogic(value = "1", delval = "0")
private Integer deleted;
//...
}
- @Version:用于标识乐观锁字段,当该字段的值发生变化时,表示该记录已被其他用户修改。
public class User {
@Version
private Integer version;
//...
}
- @SqlParser:用于标识需要进行SQL解析的方法,可以用于针对某些数据库的特殊语法做兼容处理。
public interface UserMapper extends BaseMapper<User> {
@SqlParser(filter = true)
List<User> selectAll();
}
下面是最基本的增删改查注解
6. @Insert:用于标识插入数据的方法。
public interface UserMapper extends BaseMapper<User> {
@Insert("insert into user(user_name, password) values(#{userName}, #{password})")
int insertUser(User user);
}
7. @Update:用于标识更新数据的方法。
public interface UserMapper extends BaseMapper<User> {
@Update("update user set password=#{password} where user_name=#{userName}")
int updatePassword(@Param("userName") String userName, @Param("password") String password);
}
8. @Delete:用于标识删除数据的方法。
public interface UserMapper extends BaseMapper<User> {
@Delete("delete from user where id=#{id}")
int deleteUserById(Long id);
}
9. @Select:用于标识查询数据的方法。
public interface UserMapper extends BaseMapper<User> {
@Select("select * from user where user_name=#{userName}")
User selectUserByName(String userName);
}
浙公网安备 33010602011771号