草庐IT

Jackson2

全部标签

java - jackson 通过删除 'is' 重命名原始 boolean 字段

这可能是重复的。但我找不到我的问题的解决方案。我有课publicclassMyResponseimplementsSerializable{privatebooleanisSuccess;publicbooleanisSuccess(){returnisSuccess;}publicvoidsetSuccess(booleanisSuccess){this.isSuccess=isSuccess;}}Getter和setter由Eclipse生成。在另一个类中,我将值设置为true,并将其写为JSON字符串。System.out.println(newObjectMapper().wr

java - 使用 Jackson 将 JSON 反序列化为多态类型 - 一个完整的示例给了我一个编译错误

我正在尝试完成程序员Bruce的教程,该教程应该允许对多态JSON进行反序列化。完整的列表可以在这里找到ProgrammerBrucetutorials(顺便说一句,很棒的东西)我已经完成了前五个,没有任何问题,但我在最后一个(示例6)上遇到了障碍,这当然是我真正需要开始工作的那个。我在编译时收到以下错误ThemethodreadValue(JsonParser,Class)inthetypeObjectMapperisnotapplicableforthearguments(ObjectNode,Class)这是由代码块引起的publicAnimaldeserialize(JsonP

java - 序列化 Hibernate 对象时抛出奇怪的 Jackson 异常

Jackson抛出了一个我不知道如何解决的奇怪异常。我正在使用Spring、Hibernate和Jackson。我已经考虑过延迟加载导致问题,但我已采取措施告诉jackson不要处理各种属性,如下所示:@JsonIgnoreProperties({"sentMessages","receivedMessages","educationFacility"})publicclassDirectorextendsUserAccountimplementsEducationFacilityUser{....}我对所有其他UserAccount子类也做了同样的事情。抛出的异常如下:org.cod

java - Jackson ObjectMapper - 指定对象属性的序列化顺序

我正在实现一个RESTfulWeb服务,用户必须在请求中发送一个签名的验证token,以便我可以确保请求没有被中间人篡改。我目前的实现如下。验证token是一个VerifData对象,序列化为字符串,然后进行散列和加密。classVerifData{intprop1;intprop2;}在我的服务中,我将要序列化的数据放入VerifData的实例中,然后使用JacksonObjectMapper对其进行序列化,并与验证token一起传递给验证引擎。VerfiDataverifData=newVerifData(12345,67890);ObjectMappermapper=newObj

java - 如何使用 Jackson 反序列化 JS 日期?

我从ExtJS得到一个日期字符串,格式为:"2011-04-08T09:00:00"当我尝试反序列化此日期时,它会将时区更改为印度标准时间(时间增加+5:30)。这就是我反序列化日期的方式:SimpleDateFormatdateFormat=newSimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");getObjectMapper().getDeserializationConfig().setDateFormat(dateFormat);这样做也不会更改时区。我仍然在IST中得到日期:SimpleDateFormatdateFormat=newSimp

java - 使用 jackson 的 ObjectMapper 的 JSON 对象的顺序

我正在使用ObjectMapper进行java-json映射。ObjectWriterow=newObjectMapper().writer().withDefaultPrettyPrinter();ow.writeValue(newFile(fileName+".json"),jsonObj);这是我的java类:publicclassRelation{privateStringid;privateStringsource;privateStringtarget;privateStringlabel;privateListattributes;publicStringgetId(){

java - jackson + build 者模式?

我希望Jackson使用以下构造函数反序列化一个类:publicClinic(Stringname,Addressaddress)反序列化第一个参数很容易。问题是地址被定义为:publicclassAddress{privateAddress(Mapcomponents)...publicstaticclassBuilder{publicBuildersetCity(Stringvalue);publicBuildersetCountry(Stringvalue);publicAddresscreate();}}并且构造如下:newAddress.Builder().setCity("

java - 使用 Jackson 和消息解析 JSON 文件中的内容时出现问题 - JsonMappingException - 无法反序列化为 START_ARRAY token

给定以下.json文件:[{"name":"NewYork","number":"732921","center":["latitude":38.895111,"longitude":-77.036667]},{"name":"SanFrancisco","number":"298732","center":["latitude":37.783333,"longitude":-122.416667]}]我准备了两个类来表示包含的数据:publicclassLocation{publicStringname;publicintnumber;publicGeoPointcenter;}..

java - 如何从 jackson 的自定义反序列化器中调用默认反序列化器

我在Jackson的自定义解串器中有问题。我想访问默认序列化程序来填充我要反序列化的对象。在填充之后,我会做一些自定义的事情,但首先我想用默认的Jackson行为反序列化对象。这是我目前拥有的代码。publicclassUserEventDeserializerextendsStdDeserializer{privatestaticfinallongserialVersionUID=7923585097068641765L;publicUserEventDeserializer(){super(User.class);}@Override@TransactionalpublicUser

java - org.codehaus.jackson 与 com.fasterxml.jackson.core

org.codehaus.jackson和com.fasterxml.jackson.core是否相关?我有org.codehaus.jacksonjackson-allversion1.7.2和com.fasterxml.jackson.core>jackson-databindversion2.4.3在我的pom.xml中。我不确定它们是否是多余的并且可能会发生冲突。 最佳答案 org.codehaus.jackson是Jackson的旧版本。com.fasterxml.jackson代表新项目和包。原因是,Jackson在发布