一、背景
Mysql中有张表,表的一列为Date类型。
1. 插入日期
xxx.setCreateTime(new Date())
mybatis.insert(xxx)
2. 读取日期
用Mybaitis读取日期数据时,得到了这样的一个输出:
--21T04::59.000+
用Gson转换成字符串以后,得到日期输出:
“Jun , :: PM”
二、目标
1. 读取出日期格式为"yyyy-MM-dd HH:mm:ss"
思考:需要转换一次。
方法一、遍历日期,用SimpleDateFormat类转。
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(xxx.getCreateTime());
方法二、配置Gson,让Gson在格式化的时候转换。
new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
方法X、其他地方的转换
理论上mysql也能格式化,Mybatis也可以格式化,只要这个工作有人做就好了。
这是从数据库里读出来,还有一个时间转换节点。
就是页面传递日期参数到后台。一般页面传入到Controller的是"yyyy-MM-dd HH:mm:ss"格式的字符串。
在Spring将接收参数自动转换对象的今天,你可能会发现String to Date的抛出。
好吧,Spring提供了一个日期转换注解。
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date createTime;
这样页面就可以*的传入字符串了。