问题描述
我的Spring Boot应用程序中具有以下实体,该实体由sql Server数据库支持。
@Entity
@Table(name="people")
public class Person {
@Id
@GeneratedValue(strategy=TABLE)
private Long id;
@Column(
columnDeFinition="datetime default current_timestamp",nullable=false,updatable=false,insertable = false
)
private String strTimestamp;
// ...
}
使用JpaRepository调用保存会起作用,并且会生成ID,但是即使我立即使用新返回的ID调用getone
或调用(本机查询)select * from people where id = ?
,strTimestamp也为null,该列仍会出现空出。
有趣的是,如果我对以前插入的行的ID进行硬编码,它将返回该记录。
我想在插入后返回整行,因为我需要生成的列。
我怎么能做到这一点?
谢谢。
解决方法
将strTimestamp数据类型更改为java.util.Date
并尝试。也使用@Temporal
注释
@Temporal(TemporalType.TIMESTAMP)
@Column( columnDefinition="datetime default current_timestamp",nullable=false,updatable=false,insertable = false ) private String strTimestamp;