java开发MyBatis中常用plus实体类注解符详解

 更新时间:2021年10月13日 11:32:47   作者:guoyp2126  
这篇文章主要为大家介绍了java开发MyBatis常用的plus实体类注解符示例应用详解有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

mybatis-plus常用注解符

1. 表名注解(@TableName)

作用:实体类和数据库中表建立对应关系:如

@TableName("thotset")
public class HotsetEntity implements Serializable {
	private static final long serialVersionUID = 1L;
	private Integer fclass;
	private Integer fpwid;
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date fbdate;
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date fedate;
}

代表:HotsetEntity 对应数据库中表为thotset

2. 主键注解(@TableId)

作用:标识实体类的属性对应的是表中的主键,还配置主键的生成策略,如:

@TableName("tsvbase")
public class PaintLifeEntity implements Serializable {
	private static final long serialVersionUID = 1L;
	@TableId(type = IdType.AUTO)
	private String recid;
	
	private String fcode;
	private String fname;
	}

代表:recid是表中的主键,主键的生成策略为自增类型。
在mybaits-plus中主键生成策略及注意事项
IdType.ASSIGN_ID: 主键类型为长整型或字符串,使用这类主键时要注意,在前端长整形在数据转换时和整型长度不匹配问题,会引发错误。
IdType.ASSIGN_UUID:主键类型为String,为32为不重复字符串。注意该字符串为乱序,使用它时注意一条记录,页面刷新后新增的记录并非最后一条或第一条,经常找不到新增的记录,维护时用户体验很差。
IdType.AUTO:自增;
IdType.input: 插入数据前需要使用其他方式得到主键,将得到的数据赋值到主键上。
IdType.NONE:无状态,类同于Input

注 mybatis-plus其他主键注解在高版本已经废弃

3. 属性注解(@TableField)

作用:该属性非主键属性,解决属性名与字段名不匹配问题、属性是否是数据表中字段、insert、update生成策略等。如:

@TableName("thotset")
public class HotsetEntity implements Serializable {
	private static final long serialVersionUID = 1L;
	private Integer fclass;
	private Integer fpwid;
	@TableField(vlaue="fb_date")
	private Date fbdate;
	@TableField(exist=false)
	private Date fedate;
}

第一个注解代表属性fbDate对应的数据库字段名为fb_date
第二个注解代表fedate属性不与表中的字段匹配,在新增、修改时,不用去匹配

常用的就这三个,其他注解不再详细描述。

以上就是java开发MyBatis常用plus实体类注解符详解的详细内容,更多关于MyBatis常用plus实体类注解的资料请关注脚本之家其它相关文章!

相关文章

  • IDEA实现序列化时如何自动生成serialVersionUID的步骤

    IDEA实现序列化时如何自动生成serialVersionUID的步骤

    这篇文章主要介绍了IDEA实现序列化时如何自动生成serialVersionUID的步骤,首先安装GenerateSerialVersionUID插件,当出现添加serialVersionUID选项,选中则会自动生成serialVersionUID,感兴趣的朋友一起学习下吧
    2024-02-02
  • Gradle 6.6.1 安装配置的详细教程

    Gradle 6.6.1 安装配置的详细教程

    Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。这篇文章主要介绍了Gradle 6.6.1 安装配置的详细教程,需要的朋友可以参考下
    2020-09-09
  • Netty与NIO超详细讲解

    Netty与NIO超详细讲解

    Netty本质上是一个NIO的框架,适用于服务器通讯相关的多种应用场景。底层是NIO,NIO底层是Java IO和网络IO,再往下是TCP/IP协议,下面我们跟随文章来详细了解
    2022-08-08
  • 如何处理器拦截器(HandlerInterceptor)

    如何处理器拦截器(HandlerInterceptor)

    这篇文章主要介绍了如何处理器拦截器(HandlerInterceptor)问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Springboot 整合 RocketMQ 收发消息的配置过程

    Springboot 整合 RocketMQ 收发消息的配置过程

    这篇文章主要介绍了Springboot 整合 RocketMQ 收发消息,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • 浅析Java 反射机制的用途和缺点

    浅析Java 反射机制的用途和缺点

    这篇文章给大家分析了Java 反射机制的用途和缺点以及相关知识点内容,有兴趣的朋友可以参考学习下。
    2018-07-07
  • SpringCloud微服务应用config配置中心详解

    SpringCloud微服务应用config配置中心详解

    这篇文章主要介绍了SpringCloud微服务应用-config配置中心,包括相关知识介绍、搭建、动态刷新、测试,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • SpringBoot中使用SpringSecurity进行权限控制的示例代码

    SpringBoot中使用SpringSecurity进行权限控制的示例代码

    本文将详细介绍如何在Spring Boot应用程序中使用Spring Security进行权限控制,我们将探讨Spring Security的基本概念,以及如何使用Spring Security实现认证和授权,需要的朋友可以参考下
    2024-02-02
  • springboot 项目启动后无日志输出直接结束的解决

    springboot 项目启动后无日志输出直接结束的解决

    这篇文章主要介绍了springboot 项目启动后无日志输出直接结束的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Java十道入门易踩坑题分析后篇

    Java十道入门易踩坑题分析后篇

    这篇文章总结分析了Java入门容易碰到的几点易进坑的题目,对于新手小白刚开始学Java非常有益处,让你少走避开弯路,感兴趣的朋友快来看看吧
    2022-01-01

最新评论