gpt4 book ai didi

java - sqlserver hibernate 日期映射

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:47:20 26 4
gpt4 key购买 nike

我有一个 SQLServer 并且正在使用 hibernate 将实体映射到我已有的表。该表有一个类型为“timestamp”的字段[field_date] timestamp NOT NULL,这是该表唯一的日期。

我试过将它映射到这样的实体上:

@Column(name="field_date")
private Date date;

甚至

@Column(name="field_date",columnDefinition="TIMESTAMP")
private Date date;

但每次我尝试对该实体进行选择时,我都会得到类型为 SQLServerException 的

 Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: The conversion from timestamp to TIMESTAMP is unsupported.

最佳答案

1) 尝试将其映射到 Java 类 java.sql.Timestamp。

http://docs.oracle.com/javase/7/docs/api/java/sql/Timestamp.html

同样在这里,我会尝试从您的注释中删除它
columnDefinition="TIMESTAMP"

2) 这是另一个要尝试的映射。
因此,您也可以尝试这种方法。

@Temporal(TemporalType.TIMESTAMP)
@Column(name = "CreatedOn", nullable = false)
public Date getCreatedOn() {
return this.createdOn;
}

public void setCreatedOn(Date createdOn) {
this.createdOn = createdOn;
}

3) 这与 2) 类似,但如果您需要,可以使用它
类字段的映射(不适用于 getter)。

@Temporal(TemporalType.TIMESTAMP)
@Column(name = "Last_Updated_Date", nullable=false)
private Date lastUpdatedDate;

关于java - sqlserver hibernate 日期映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20654335/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com