Java 泽西岛日期/时间序列化
我正在用web服务中的java.util.Date属性填充模型对象 我在JDBC中用这个日期填充模型对象:Java 泽西岛日期/时间序列化,java,json,jersey,Java,Json,Jersey,我正在用web服务中的java.util.Date属性填充模型对象 我在JDBC中用这个日期填充模型对象: compRec.setEffDt(new java.util.Date(resultSet.getTimestamp("eff_dt").getTime())); 在my DB query Oracle工具中选择行/列,它显示 1999-01-13 21:55:00 创建对象后,IDE调试器将正确显示类型和内容,如下所示: Date@5952: Jan 13 21:55:00 MST
compRec.setEffDt(new java.util.Date(resultSet.getTimestamp("eff_dt").getTime()));
在my DB query Oracle工具中选择行/列,它显示
1999-01-13 21:55:00
创建对象后,IDE调试器将正确显示类型和内容,如下所示:
Date@5952: Jan 13 21:55:00 MST 1999
所以,在我看来,在这一点上,一切都完好无损。但是,Jersey客户端正在使用以下JUnit测试将其序列化为JSON,如下所示:
@Test
public void getDetails0() {
long value = 1L;
try {
int companyId = 333;
Client client = Client.create();
WebResource webResource = client.resource(webServiceTestBaseUri + implPath + "/data/" + companyId);
CompanyGetDetails clientResponse = webResource.accept("application/json").type("application/json").get(CompanyGetDetails.class);
System.out.println(clientResponse.toJson());
} catch (Exception e) {
value = -1L;
e.printStackTrace();
}
assertEquals(1L, value);
}
然而,在泽西岛一侧,它看起来像:
"effDt": "Wed Mar 28 04:42:25 MDT 132903212",
你能用一个简短但完整的程序来演示这一点吗?写一个独立的程序,包括一个模型对象、连接等等是很困难的。但是我添加了一些实际的代码,这可能会提供更多的上下文。谢谢你的时间。我不明白为什么创建一个独立的示例会很难。您所需要的只是一个具有单个日期属性的类——如果问题在于将其转换为JSON,您不需要从任何地方获取它。。。如果这就是问题所在,那听起来更像是杰克逊的问题,而不是球衣的问题。