util.sql 日期在 json 响应中
util.sql dates in json response
我正在尝试将 java 实用程序日期传递给我的 json 响应,但没有成功。
如果我 System.out.println
我得到“1970-01-01 01:00:00.263
”正确格式的日期。
System.out.println("from date: " + fromDate);
System.out.println("to date: " + toDate);
// from date: 1970-01-01 01:00:00.022
// to date: 1970-01-01 01:00:00.263
// in my json i get
// from date: 22
// to date: 263
如果我将日期传递给 json return,我只会得到“263
”(时间戳的最后一部分)?
如何设置日期格式以便获取整个日期(YY-MM-DD,时-分-秒)而不是时间戳的最后一部分?
模型对象
public class testSomething {
boolean status;
String msg;
Date fromDate;
Date toDate;
public testSomething(boolean status, String msg, Date fromDate, Date toDate) {
this.status = status;
this.msg = msg;
this.fromDate = fromDate;
this.toDate = toDate;
}
return值
Date fromDate = dates.get(0);
Date toDate = (Date) dates.get(dates.size() - 1);
return new testSomething(true, "msg here", fromDate, toDate);
默认转换是发送自纪元 (date.getMillis()
) 以来的毫秒数。有两个原因:
- 计算机不关心可读性。
- 此时间格式与时区无关。这意味着您可以将日期发送到另一台计算机,它会显示相同的时间点。
根据您的 JSON 框架,有不同的方法来安装数据转换器。 Jackson 有几个 third-party 数据类型模块用于此目的,您可以在 ObjectMapper
.
中安装自己的模块
像这样就可以了...
long timestamp = fromDate.getTime();
SimpleDateFormat dateFormat = new SimpleDateFormat("YYYY/MM/dd HH-mm-ss");
System.out.println(dateFormat.format(timestamp));
通过将 spring.jackson.date-format=(yyyy-MM-dd HH:mm:ss)
添加到我的 application.properties 文件来修复它
在 Java Spring 中,我想通过在对象中使用 java.sql.Date 的 PUT 将数据和时间发送到对象。我使用 json 发送它,这是我使用的格式
public class MyEntityClass {
private String username;
private Date dateTime;
}
而我使用的 Json 格式是,
{
"username": "selena31",
"dateTime":"2017-01-23T12:34:56"
}
它对我有用:)
我正在尝试将 java 实用程序日期传递给我的 json 响应,但没有成功。
如果我 System.out.println
我得到“1970-01-01 01:00:00.263
”正确格式的日期。
System.out.println("from date: " + fromDate);
System.out.println("to date: " + toDate);
// from date: 1970-01-01 01:00:00.022
// to date: 1970-01-01 01:00:00.263
// in my json i get
// from date: 22
// to date: 263
如果我将日期传递给 json return,我只会得到“263
”(时间戳的最后一部分)?
如何设置日期格式以便获取整个日期(YY-MM-DD,时-分-秒)而不是时间戳的最后一部分?
模型对象
public class testSomething {
boolean status;
String msg;
Date fromDate;
Date toDate;
public testSomething(boolean status, String msg, Date fromDate, Date toDate) {
this.status = status;
this.msg = msg;
this.fromDate = fromDate;
this.toDate = toDate;
}
return值
Date fromDate = dates.get(0);
Date toDate = (Date) dates.get(dates.size() - 1);
return new testSomething(true, "msg here", fromDate, toDate);
默认转换是发送自纪元 (date.getMillis()
) 以来的毫秒数。有两个原因:
- 计算机不关心可读性。
- 此时间格式与时区无关。这意味着您可以将日期发送到另一台计算机,它会显示相同的时间点。
根据您的 JSON 框架,有不同的方法来安装数据转换器。 Jackson 有几个 third-party 数据类型模块用于此目的,您可以在 ObjectMapper
.
像这样就可以了...
long timestamp = fromDate.getTime();
SimpleDateFormat dateFormat = new SimpleDateFormat("YYYY/MM/dd HH-mm-ss");
System.out.println(dateFormat.format(timestamp));
通过将 spring.jackson.date-format=(yyyy-MM-dd HH:mm:ss)
添加到我的 application.properties 文件来修复它
在 Java Spring 中,我想通过在对象中使用 java.sql.Date 的 PUT 将数据和时间发送到对象。我使用 json 发送它,这是我使用的格式
public class MyEntityClass {
private String username;
private Date dateTime;
}
而我使用的 Json 格式是,
{
"username": "selena31",
"dateTime":"2017-01-23T12:34:56"
}
它对我有用:)