草庐IT

Jackson2HashMapper

全部标签

java - Jackson - 反序列化 JSON 字符串 - TypeReference 与 TypeFactory.constructCollectionType

要将JSON字符串反序列化为类列表,StackOverflowquestion列出了不同的方法类型1(docslink):ListsomeClassList=mapper.readValue(jsonString,typeFactory.constructCollectionType(List.class,SomeClass.class));类型2(docslink):Listlist=mapper.readValue(jsonString,newTypeReference>(){});虽然上述两种类型都可以完成工作,但这些实现之间有什么区别? 最佳答案

java - Jackson @JsonProperty(required=true) 不会抛出异常

我正在使用jackson2.2注释@JsonProperty并将required设置为true。通过ObjectMapperreadValue()方法反序列化不包含该属性的json文件时,不会引发异常。它应该以不同的方式工作还是我错过了什么?我的dto类:publicclassUser{publicenumGender{MALE,FEMALE};publicstaticclassName{privateString_first,_last;publicStringgetFirst(){return_first;}publicStringgetLast(){return_last;}pu

json - jackson 自动将 Joda DateTime 格式化为 ISO 8601 格式

根据http://wiki.fasterxml.com/JacksonFAQDateHandling,“DateTime可以自动序列化/反序列化,类似于处理java.util.Date的方式。”但是,我无法完成这个自动功能。有与此主题相关的StackOverflow讨论,但大多数都涉及基于代码的解决方案,但根据上面的引用,我应该能够通过简单的配置来完成此操作。根据http://wiki.fasterxml.com/JacksonFAQDateHandling我设置了我的配置,因此将日期写为时间戳是错误的。结果是java.util.Date类型被序列化为ISO8601格式,但org.jo

java - 在 Spring MVC 中使用 Jackson JSON 解析 JSON

好的,所以我已经研究了一段时间了,不再赘述。我有一个SpringMVCservlet,我需要从JavaScript前端Web应用程序接受JSON。要解析JSON,我需要使用Jackson。我需要获取JSON中的值并按照它们在JSON中出现的顺序将它们存储到列表中。我已经尝试将JsonFactory与JsonParser和JsonNode对象一起使用,但完全可以让它工作。我也尝试打开一个BufferedReader并逐行遍历请求正文,但也不能完全得到这个。我在这里查看了几个相关问题,但到目前为止没有一个对我有用。知道的任何人都可以在这里为我指明正确的方向吗,带有示例的网页会很棒!

java - 在 Java 中的 Jackson JSON 反序列化期间忽略丢失的属性

在示例中classPerson{Stringname;intage;}如果JSON对象缺少属性“年龄”,{"name":"John"}Personperson=objectMapper.readValue(jsonFileReader,Person.class);它抛出一个JsonMappingException说它不能反序列化。是否有注解在反序列化过程中忽略缺失的字段? 最佳答案 @JsonIgnoreProperties(ignoreUnknown=true)在类里面对我有用。 关于

java - jackson 的@JsonSubTypes 是否仍然需要多态反序列化?

我能够序列化和反序列化抽象基类注释的类层次结构@JsonTypeInfo(use=JsonTypeInfo.Id.MINIMAL_CLASS,include=JsonTypeInfo.As.PROPERTY,property="@class")但没有@JsonSubTypes列出子类,子类本身也相对没有注释,在构造函数上只有一个@JsonCreator。ObjectMapper是普通的,我没有使用mixin。关于PolymorphicDeserializationand"typeids"的jackson文档建议(强烈)我需要抽象基类上的@JsonSubTypes注释,或者在mixin上

java - Jackson - 具有双向关系的实体序列化(避免循环)

我有两个实体:Parent{Child[]children;}andChild{Parentparent;}我知道@JsonBackReference和@JsonManagedReference。它们很好,如果我要序列化​​Parent的实例。但我还需要传输Child的实例,并且我希望填充parent字段。换句话说:在Parent序列化时,它应该有children但它们的父字段可能为空(可以通过使用json引用注释来解决)。在Child序列化时,它应该有parent和它们的children(但children不必填充了parent。有没有办法使用标准的jackson功能来解决这个问题?

java - 使用 Jackson 反序列化枚举

我正在尝试使用Jackson2.5.4反序列化枚举,但未能成功,我不太了解我的情况。我的输入字符串是驼峰式大小写,我想简单地映射到标准Enum约定。@JsonFormat(shape=JsonFormat.Shape.STRING)publicenumStatus{READY("ready"),NOT_READY("notReady"),NOT_READY_AT_ALL("notReadyAtAll");privatestaticMapFORMAT_MAP=Stream.of(Status.values()).collect(toMap(s->s.formatted,Function.

json - 如何使用 Gradle 将 Boon 或 Jackson JSON 解析器添加到 Android 项目?

我想知道如何使用Gradle将Boon或Jackson解析器添加到android项目中?我找到了使用GSON的方法,但找不到使用Boon或Jackson的任何内容。 最佳答案 @Baldy的回答同:implementation'com.fasterxml.jackson.core:jackson-core:2.10.1'implementation'com.fasterxml.jackson.core:jackson-annotations:2.10.1'implementation'com.fasterxml.jackson.co

json - 当使用 Spring MVC for REST 时,如何让 Jackson 漂亮地打印呈现的 JSON?

在使用SpringMVC开发REST服务时,我希望在开发中呈现JSON'pretty-print',但在生产中呈现正常(减少空白)。 最佳答案 如果您使用的是SpringBoot1.2或更高版本,简单的解决方案是添加spring.jackson.serialization.INDENT_OUTPUT=true到application.properties文件。这假设您正在使用Jackson进行序列化。如果您使用的是较早版本的SpringBoot,则可以添加http.mappers.json-pretty-print=true这个解决