Spring中使用jdbcTemplate.queryForRowSet取值,日期丢失时分秒的解决方案

java spring 文章 2021-05-20 16:05 83 0 全屏看文

今天查询数据

SqlRowSet rs =  jdbcTemplate.queryForRowSet(dbAnnotatePrefix+SQL_GETBYSELLNO, os);
while(rs.next()) {
    s.setSaleDate(rs.getDate("sale_date"));
}

获取销售日期的时候发现,

从元数据:"2021-05-11 09:03:11" 

变成了 "2021-05-11 00:00:00" 时分秒丢失了。

image.png

后来找到了解决方案就是 不要直接使用 getDate

要使用 rs.getTimestamp

代码改成 

SqlRowSet rs =  jdbcTemplate.queryForRowSet(dbAnnotatePrefix+SQL_GETBYSELLNO, os);
while(rs.next()) {
    s.setSaleDate(rs.getTimestamp("sale_date"));
}

时分秒就回来了。

-EOF-