Spring学习笔记(十二):关于Date的转换

在开发时,前后台交互,传的是json字符串,数据库中的格式是Date;
那么传的方法如下:
方案1:在实体类中定义一个date对象,然后get时加个注解,如下

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date getCommentTime() {
        return commentTime;
    }

此时返回到前端的格式就对了
方案2:返回格式yyyy-mm-dd,没有小时
- 前台传时间戳,后台调用Date(timestamp)构造date,然后save到实体对象中
- 时间戳格式为Long,
- date.toString()返回的时间格式为yyyy-mm-dd,
- 数据库中的时间格式为yyyy-mm-dd,

代码如下:

    Date date = new Date(Long.parseLong("1449820665000"));
    entiy.setCommentTime(date.toString());

注:

  • 代码中的date是java.sql.Date类,这样toString才能返回yyyy-mm-dd格式的日期
  • 实体对象中的CommentTime字段是String,这样返回到前端和保存到数据库时都是yyyy-mm-dd格式的;
  • 注意,返回的时间没有小时,只到day
    方案3:
    用SimpleDateFormat格式化:
    这里的date是java.util.date下的
import java.text.SimpleDateFormat;
import java.util.Date;
Date date = new Date();
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String str = formatter.format(date);
        System.out.println(str);

你可能感兴趣的:(Spring学习笔记(十二):关于Date的转换)