Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql datetime映射到JPA Temporal.Type TIMESTAMP。JSON响应中只获取日期,不获取时间_Mysql_Json_Datetime_Jpa_Resteasy - Fatal编程技术网

mysql datetime映射到JPA Temporal.Type TIMESTAMP。JSON响应中只获取日期,不获取时间

mysql datetime映射到JPA Temporal.Type TIMESTAMP。JSON响应中只获取日期,不获取时间,mysql,json,datetime,jpa,resteasy,Mysql,Json,Datetime,Jpa,Resteasy,下面是一个场景 我有一个JPA实体类,其字段为 @Temporal(TemporalType.TIMESTAMP) @Column(name=“CREATED_DATE”,length=19) private Date createdDate=null 此字段映射到表中创建的日期列,其类型为datetime(我使用的是mysql) 当我选择表中的行时,CREATED_DATE列将同时显示日期和时间。当我使用query.getSingleResult获取行数据并将返回的对象类型转换为Entity类

下面是一个场景

我有一个JPA实体类,其字段为

@Temporal(TemporalType.TIMESTAMP)

@Column(name=“CREATED_DATE”,length=19)

private Date createdDate=null

此字段映射到表中创建的日期列,其类型为
datetime
(我使用的是mysql)
当我
选择表中的行时,CREATED_DATE列将同时显示日期和时间。当我使用
query.getSingleResult
获取行数据并将返回的对象类型转换为Entity类时,Entity类的
createdDate
字段也有日期和时间:

request = (MyEntityClass) query.getSingleResult();<br>
System.out.println(request.getCreatedDate());
控制台输出:
Response getResource::200:[{……,“createdDate”:“18-05-2012”…}]

我正在服务器端使用RestEasy Json api。

我在SO中看到了一个类似的问题(),但这里讨论的答案似乎不适用于我


请提供帮助。

问题与对象序列化为JSON的方式有关。您可能以某种方式(注释、默认实现、配置文件)对其进行了配置,以便以这种方式序列化日期。

问题与对象序列化为JSON的方式有关。这就是你应该在问题中描述的。我并没有显式地序列化任何对象。我现在应该怎么做来纠正这个问题呢?对象不会自动变成JSON字符串。您至少通过一些注释或配置文件配置了框架来为您序列化它。非常感谢@JBNizet。我必须更改MessageBodyWriter类,该类已将默认日期格式设置为“dd-MM-yyyy”。如果您可以添加上述注释作为答案,我将接受答案和注释,并更改代码。有一个
javax.ws.rs.ext.MessageBodyWriter
和一个
javax.ws.rs.ext.MessageBodyReader
,其中
java.text.DateFormat
字段设置为“dd-MM-yyyyy”,只需将其更改为“dd-MM-yyyyyy hh:MM:ss”。谢谢你指出问题所在。
ClientResponse<String> response = clientRequest.get(String.class);
System.out.println("Response getResource ::"+response.getStatus()+"::"+response.getEntity());