【问题标题】:How to save a "timestamp" in the database with JPA如何使用 JPA 在数据库中保存“时间戳”
【发布时间】:2022-01-28 13:19:50
【问题描述】:

我有一个已经存在的应用程序,我必须使用 JPA 在数据库中添加一个列来保存“时间戳”(带时间的完整日期),然后创建一个端点来接收这个“时间戳”,但我是新来的到 Java 和编程,我不知道该怎么做。我试着这样做:

服务:

@Column(name="timeStamp", columnDefinition="TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP")
@Temporal(TemporalType.TIMESTAMP)
public Date getTimeStamp() {
    return timeStamp;
}

public void setTimeStamp(Date timeStamp) {
    this.timeStamp = timeStamp;
}

控制器:

@PostMapping(
    value = "/{date}",
    produces = MediaType.APPLICATION_JSON_VALUE
)
public ResponseEntity<?> testDate(@RequestParam Timestamp date){
    return ResponseEntity.ok().body(VisitantService.getTimeStamp());
}

但是一直报错。

【问题讨论】:

  • 您可以使用日期数据类型,假设您的列名称是 UPDATED_DATETIME,那么您必须添加一个成员变量,该变量将映射到该列,如 @Column(name = "UPDATED_DATETIME") private Date updatedDateTime ;// 生成 getter 和 setter,然后你必须在其中设置你的值,你要保存你的数据对象

标签: java mysql spring-boot jpa


【解决方案1】:

您可以使用Instant 捕获日期和时间。它与 JPA 兼容。 https://docs.oracle.com/javase/8/docs/api/java/time/Instant.html

【讨论】:

    猜你喜欢
    • 2016-08-24
    • 2011-06-18
    • 2017-02-02
    • 1970-01-01
    • 2018-07-22
    • 1970-01-01
    • 2019-10-23
    • 1970-01-01
    • 2019-03-31
    相关资源
    最近更新 更多