sql - Spring中的数据转换
问题描述
我是这里的 Spring 新手,当我使用长数据类型(用于存储时间戳)时,它会在 SQL 中转换为中等文本,这会导致我的代码出现一些问题。有什么解决办法吗?前任:
@Column(columnDefinition = "long default 0")
private long loginfailedtime;
@Column(columnDefinition = "long default 0")
private long lastlogintime;
@Column(columnDefinition = "long default 0")
private long otp_timestamp;
解决方案
由于您要存储的值是时间,我建议使用 Date 类型的实例。
@Column(columnDefinition="TIMESTAMP DEFAULT CURRENT_TIMESTAMP")
private Date loginfailedtime;
@Column(columnDefinition="TIMESTAMP DEFAULT CURRENT_TIMESTAMP")
private Date lastlogintime;
@Column(columnDefinition="TIMESTAMP DEFAULT CURRENT_TIMESTAMP")
private Date otp_timestamp;
另外,如果要使用long,在列定义中使用 long ,其中应提及与表对应的数据类型。
columnDefinition:为列生成 DDL 时使用的 SQL 片段。
例如,
@Column(name="EMP_PIC", columnDefinition="BLOB NOT NULL")
在 JAVA 8 中,我们提供了以下映射。
@Column(name = "local_time", columnDefinition = "TIME")
private LocalTime localTime;
@Column(name = "local_date", columnDefinition = "DATE")
private LocalDate localDate;
@Column(name = "local_date_time", columnDefinition = "TIMESTAMP")
private LocalDateTime localDateTime;
在这里探索更多 => https://www.baeldung.com/jpa-java-time
推荐阅读
- typescript - 带有 TypeScript 数组 .push 的 VueX 不是函数
- git - 存储库的 Git Push 可访问性错误
- javascript - React Infinite Scroll - Intersection Observer API 总是跳回顶部
- python - Boost.python 空指针函数
- xcode - 升级到 Cordova ios6 会导致项目的 xcode 出现错误
- javascript - 如何使用 vanilla JavaScript 选择下拉选项?
- python - Multiprocess.Process 未在空队列上退出
- sql-server - 转换多列
- r - 如何在spring mvc应用程序中运行R
- kubernetes - 基本 Helm 依赖说明