下面是非常简单的代码。
@SqlResultSetMapping(name="getTestTable", classes = {
@ConstructorResult(targetClass = someEntity.class,
columns = {
@ColumnResult(name="some_date", type=Date.class)
})
})查询:
getEntityManager().createNativeQuery("SELECT distinct some_date from test " );
List<someList > list=query. getResultList();实体: someEntity
@Column(name = "some_date")
@JsonFormat(pattern="dd/MM/yyyy")
private Date someDate;
public someEntity(java.util.Date someDate) {
super();
this.someDate= someDate;
}在'someDate‘列中有数据,查询在someDate上运行良好,但是当运行上面的代码时,"some_date“总是为null。
这个代码有什么问题?我该如何获得约会的价值?
我甚至转换了日期格式,并在代码中声明了字段字符串,但是没有工作。
发布于 2019-02-18 10:31:29
1)在使用java.util.Date时,应该用时态类型标记日期字段:
@Column(name = "some_date")
@Temporal(TemporalType.DATE)
@JsonFormat(pattern="dd/MM/yyyy")
private Date someDate;2)将本机查询定义为NamedNativeQuery:
@NamedNativeQuery(name = "testTableNativeQuery",
query = "SELECT distinct some_date from test",
resultSetMapping = "getTestTable")3)更新查询执行:
getEntityManager().createNamedQuery("testTableNativeQuery", someEntity.class).getResultList();https://stackoverflow.com/questions/54744825
复制相似问题