注意不要这样用 jdbcTemplate 取数据库中的 TIMESTAMP 日期,这样返回的日期会是当前日期,而不是数据库中查询出来的日期。java
如数据库字段 create_time 为 TIMESTAMP 类型:sql
import java.util.Date; String sql = "SELECT MAX(mtm.create_time) FROM t_message mtm"; Date result = jdbcTemplate.query(sql, paramMap, new BeanPropertyRowMapper<T>(Date.class)); // 上面那样写其实就至关于这样,不管数据库中是否能查询出结果 // Date result = new Date();
应该改为这样:数据库
String sDate = jdbcTemplate.query(sql, paramMap, new BeanPropertyRowMapper<T>(String.class)); Date result = DateUtil.parse(sDate);
具体缘由我尝试跟了一下代码,但感受太复杂,跟不下去。。。app
有知道具体缘由的请告知,code
谢谢!class