首页 > 编程语言 >(Java实体类比表字段多处理方案)注解忽略实体类属性

(Java实体类比表字段多处理方案)注解忽略实体类属性

时间:2023-08-17 09:47:28浏览次数:55  
标签:JsonFormat 实体类 Java ss 表字 private yyyy HH timezone

背景

实体类多添加了几个字段用于查询,如果项目中使用了mybatis或mybatisplus会导致找不到表中字段的错误

Caused by: java.sql.SQLSyntaxErrorException: Unknown column 'create_start_time' in 'field list'

解决

项目中使用mybatis

import org.springframework.data.annotation.Transient;
@Transient
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date startTime;
@Transient
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date endTime;

项目中使用mybatisplus

import com.baomidou.mybatisplus.annotation.TableField;
@TableField(exist = false)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date startTime;
@TableField(exist = false)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date endTime;
//exist = false 表示该属性不为数据库表字段,但又是必须使用的。

例子

<if test="createStartTime != null and createEndTime != null">and DATE_FORMAT(u.create_time,'%Y-%m-%d %H:%i:%s')
        >= #{createStartTime} and #{createEndTime} >= DATE_FORMAT(u.create_time,'%Y-%m-%d %H:%i:%s')
</if>

//由于项目中使用了mybatisplus的lambdaQuery()需要在实体类中添加忽略注解 
    @ApiModelProperty(value = "注册开始时间")
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createStartTime;
    @ApiModelProperty(value = "注册结束时间")
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createEndTime;

 

标签:JsonFormat,实体类,Java,ss,表字,private,yyyy,HH,timezone
From: https://www.cnblogs.com/cgy-home/p/17636749.html

相关文章

  • Html+JavaScript实现手写签名
    前言Hello各位,本葡萄又来啦,今天遇到的场景是这样的:在日常业务流程中,经常需要某一流程环节中相关责任人员进行审批签字,早期许多公司为了省事就直接会把这位负责人的签名以键盘打字(楷体)的形式打印出来,但是这样的坏处就是会导致所有的负责人的签名都是一样的,没有美感,为了解决这个问......
  • JavaSE学习笔记day01
    书写第一段Java代码一、代码需要写在src中;二、先在src下创建包;包:package,用于组织指定Java文件,对于同类型、同功能的Java文件则存在同一个包下。包在操作系统中以文件夹的形式存在。总结:包用于对Java文件进行归类划分的。三、然后在包下创建类。类才是真正写Java代码......
  • JavaSE学习笔记day02
    面向对象一、面向过程和面向对象的思想面向过程的思想:将事情拆分成多个步骤,然后一步一步地完成即可。强调事情的具体步骤/过程。该思想常见于编码过程中的方法或者函数当中。比如:打扫教室(1)先拿到清洁工具(2)然后扫地(3)然后拖地(4)倒垃圾(5)归还清洁工具......
  • JavaSE学习笔记day03
    一、异常处理机制当程序中抛出异常时,会导致整个程序中断执行。若要程序不受影响,可以继续往下执行,则使用异常处理机制。异常处理机制:try-catch-finally语法结构:try{可能会抛出异常的代码}catch(异常类型变量名){处理异常的代码}finally{......
  • java Sping aop 以及Spring aop 的应用事务管理
    1.回顾线程死锁概念和如何避免死锁的发生:线程的通信waitnotify()notify():---Object类线程的状态:NEW--->start()--->就绪状态---CPU时间片---运行状态RUNNABLE]--->sleep()--->TIMED_WAITING--->wait()---->WAITING----sysn---Blocked---->终止状态[T]线程池:常见......
  • java获取异常的详细信息方法
    /**获取异常详细信息*/privateStringgetExceptionDetail(Exceptionex){Stringret=null;try{ByteArrayOutputStreamout=newByteArrayOutputStream();PrintStreampout=newPrintStream(out);ex.prin......
  • java基础运算符01
    运算符算数运算符:+,-,*,/,%(取余),++(自增),--(自减)赋值运算符:=关系运算符:<,>,>=,<=,==(两个=是等于,一个=是赋值),!=instanceof逻辑关系运算符:&&,||,!位运算符:&,|,^,~,>>,<<,>>>条件运算符:?:扩展赋值运算符:+=,-=,*=,/=在运算中,各个数值类型取等级最高的,如果有long类型取long类型,long之下是double,......
  • Java日志系列:Log4j使用和原理分析
    目录一、简介二、使用三、日志级别四、组件说明LoggersAppendersLayouts五、配置加载初始化配置配置文件加载查看日志记录器的详细信息六、Layout的格式七、Appender的输出FileAppenderRollingFileAppenderDailyRollingFileAppenderJDBCAppender八、日志记录器的层级关系一、简介......
  • 【Java 高阶】Maven setting.xml 详解
    ......
  • 【Java 高阶】Maven setting.xml 详解
    ......