时间属性的自动封装和格式转换
时间字符串自动封装为Date
在B/S开发中,前端传输到后端的时间为字符串格式,传统的方式用java类按格式转换成Date,最后入库保存,很是繁琐。我们的精力不应该放在这些参数的封装上,而是应该放在业务逻辑的实现上。所以,我们这里有一个非常有用的参数注解:@DateTimeFormat。
使用如下:
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date lastLoginTime;
这样在spring-mvc自动封装过程中,会将满足pattern的字符串封装成Date。很是方便实用。
Date转换成字符串
在前后端交互中,不仅仅是从前端向后端传递数据,后端也需要向前端传递数据。此时就存在Date转换成字符串的格式问题。传统方法是在前端对参数进行格式化。那么就需要在前端写js转换方法,也很是繁琐。所以,我们这里也用注解的方式控制Date转换成字符串的格式:@JsonFormat。
使用如下:
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
public Date getLastLoginTime() {
return lastLoginTime;
}
综上,我们就很好的完成了前后端日期的封装和显示的格式问题。