MyBatis-Plus是一个强大的MyBatis扩展,它提供了许多有用的特性,以下是MyBatis-Plus中的一些主要使用注解和描述:
1.@TableName
:这个注解用于指示一个类对应数据库中的哪个表。例如,有一个User类,数据库中对应的表是users,就可以在User类上加@TableName(value = "users"),这样MyBatis-Plus就知道这个类和哪个表有关联了。
2.@TableId
:这个注解用于标识表的主键。比如,User类的id字段是users表的主键,就可以在id字段上加@TableId,命名主键的名称。
3.@TableField
:如果实体类的字段名称和数据库表中的列名称不一样,或者想指定某些特性如是否插入、更新等,就可以使用@TableField注解。比如,User类有一个字段叫做firstName,但在users表中对应的列是first_name,就可以在firstName字段上加@TableField(value = "first_name")。
4.@Version
:这个注解是用于乐观锁的版本号标识,通常配合一个整型字段使用,每次表更新时,这个字段的值都会自动加1。
5.@EnumValue
:此注解用于标记Enum类型的字段,指定存到数据库中的值。比如,一个字段类型是Enum,它有两个值:MALE和FEMALE,我们想在数据库中存储的是0和1而不是MALE和FEMALE,就可以在Enum类的字段上加@EnumValue。
6.@TableLogic
:这个注解用于逻辑删除字段,比如有个字段is_deleted是用来标记记录是否删除的,我们不想真的删掉记录,只是把is_deleted的值从0改成1,就可以在is_deleted字段上加@TableLogic。
以上这些注解是MyBatis-Plus中最常用的注解,它们的存在大大简化了我们的操作,使得我们能更专注于业务的实现。
在使用这些注解的时候,我们需要注意:
1.注解应该放在正确的地方。例如,@TableName应该放在类上,@TableId和@TableField应该放在字段上。
2.各注解的参数要用对。例如,@TableName和@TableField的value参数等于数据库中的表名或列名,@TableId的value参数是主键的ID类型。
3.有些注解需要配合其他配置使用。例如,@Version需要配合乐观锁插件使用,@EnumValue需要配合对应的TypeHandler使用。