Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.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
Android rest服务的jackson日期格式不正确_Android_Json_Date_Jackson - Fatal编程技术网

Android rest服务的jackson日期格式不正确

Android rest服务的jackson日期格式不正确,android,json,date,jackson,Android,Json,Date,Jackson,我有一个简单的对象,上面有两个日期 { "person_id": 11077, "person_date_time1": "2012-11-27", "person_date_time2": "2011-11-27T08:30:00Z" } 例如: public class Person extends RealmObject { @PrimaryKey private int person_id;

我有一个简单的对象,上面有两个日期

{
            "person_id": 11077,
            "person_date_time1": "2012-11-27", 
            "person_date_time2": "2011-11-27T08:30:00Z" 
}
例如:

public class Person extends RealmObject {

    @PrimaryKey
    private int person_id;
    private Date person_date_time1;
    private Date person_date_time2;

//getter , setters

}
android rest服务返回的json的结构如下

{
            "person_id": 11077,
            "person_date_time1": "2012-11-27", 
            "person_date_time2": "2011-11-27T08:30:00Z" 
}
问题是jackson格式化程序解析的日期不正确:(

person.person\u date\u time1打印美国东部时间2012年11月26日星期一19:00:00(少一天) person.person\u date\u time2打印2011年11月27日美国东部时间03:30:00(少于5小时)

如何定义Android上jackson日期反序列化的正确格式

rest服务android

@Rest(rootUrl = ConstantsUtils.URL, converters = { MappingJackson2HttpMessageConverter.class })
@Accept(MediaType.APPLICATION_JSON)
public interface PersonRest extends RestClientErrorHandling {

    @Get("/person/{id}")
    Person getPerson(String id);
}
我不能使用jodadatetime,因为我使用的是一个api来持久化数据(realm.io),它只对日期有效


非常感谢

Jakcson解析器很好,但您在JSON上如何表示日期方面似乎有问题。Jackson解析器将遵循创建日期对象的精确模式,因此您必须匹配它。

谢谢。我无法处理JSON中的数据。我需要为Jackson dese添加格式rializer。在春季,我们可以使用ObjectMapper,类似于getObjectMapper().getDeserializationConfig().setDateFormat(dateFormat);但我不知道如何使用jackson对Android+Android注释执行同样的操作:(