Questions tagged «jackson»

Jackson是一个Java库,用于处理诸如读写(解析/生成)以及与Java对象之间的数据绑定之类的任务。尽管主要用于JSON,但Jackson还支持许多其他数据格式,例如Avro,CBOR,CSV,Java属性,Protobuf,Smile,XML和YAML。


10
如何使用Jackson JSON将JSON字符串转换为Map <String,String>
我正在尝试做这样的事情,但它不起作用: Map&lt;String, String&gt; propertyMap = new HashMap&lt;String, String&gt;(); propertyMap = JacksonUtils.fromJSON(properties, Map.class); 但是IDE说: 未经检查的作业 Map to Map&lt;String,String&gt; 什么是正确的方法?我仅使用Jackson,因为这已在项目中提供,是否存在本机Java转换成JSON或从JSON转换的方法? 在PHP中,我将简单地json_decode($str)得到一个数组。我在这里需要基本相同的东西。
184 java  jackson 

9
什么时候使用@JsonProperty属性,它的作用是什么?
这个bean的“状态”: public class State { private boolean isSet; @JsonProperty("isSet") public boolean isSet() { return isSet; } @JsonProperty("isSet") public void setSet(boolean isSet) { this.isSet = isSet; } } 使用ajax“成功”回调通过电线发送: success : function(response) { if(response.State.isSet){ alert('success called successfully) } 这里需要注释@JsonProperty吗?使用它的好处是什么?我想我可以删除此注释而不会引起任何副作用。 在https://github.com/FasterXML/jackson-annotations/wiki/Jackson-Annotations上阅读有关此注释的信息我不知道何时需要使用此注释?
181 java  ajax  jackson 

4
如何使用Jackson更改JSON中的字段名称
我正在使用杰克逊将我的对象转换为json。该对象具有2个字段: @Entity public class City { @id Long id; String name; public String getName() { return name; } public void setName(String name){ this.name = name; } public Long getId() { return id; } public void setName(Long id){ this.id = id; } } 由于我想将其与jQuery自动完成功能一起使用,因此我希望“ id”在json中显示为“ value”,在“ name”中显示为“ label”。杰克逊的文档不明确这一点,我已经想尽注释,甚至远程好像它做什么,我需要,但我不能让name显示为label,并id显示为value在JSON。 有谁知道该怎么做?

9
使用Jackson将Java对象转换为JSON
我希望我的JSON看起来像这样: { "information": [{ "timestamp": "xxxx", "feature": "xxxx", "ean": 1234, "data": "xxxx" }, { "timestamp": "yyy", "feature": "yyy", "ean": 12345, "data": "yyy" }] } 到目前为止的代码: import java.util.List; public class ValueData { private List&lt;ValueItems&gt; information; public ValueData(){ } public List&lt;ValueItems&gt; getInformation() { return information; } public void setInformation(List&lt;ValueItems&gt; information) { this.information …
166 java  json  object  jackson 

8
使用Jackson将JSON字符串转换为Pretty Print JSON输出
这是我拥有的JSON字符串: {"attributes":[{"nm":"ACCOUNT","lv":[{"v":{"Id":null,"State":null},"vt":"java.util.Map","cn":1}],"vt":"java.util.Map","status":"SUCCESS","lmd":13585},{"nm":"PROFILE","lv":[{"v":{"Party":null,"Ads":null},"vt":"java.util.Map","cn":2}],"vt":"java.util.Map","status":"SUCCESS","lmd":41962}]} 我需要将上述JSON String转换为Pretty Print JSON Output(使用Jackson),如下所示: { "attributes": [ { "nm": "ACCOUNT", "lv": [ { "v": { "Id": null, "State": null }, "vt": "java.util.Map", "cn": 1 } ], "vt": "java.util.Map", "status": "SUCCESS", "lmd": 13585 }, { "nm": "PROFILE "lv": [ { "v": { "Party": null, "Ads": null }, "vt": …

9
杰克逊:如何防止现场序列化
我有一个带有密码字段的实体类: class User { private String password; //setter, getter.. } 我希望在序列化过程中跳过此字段。但是它仍然应该能够反序列化。这是必需的,以便客户端可以向我发送一个新密码,但无法读取当前密码。 我如何与杰克逊做到这一点?
163 java  json  jackson 

7
杰克逊克服下划线支持骆驼案
我从互联网上检索了JSON字符串;像大多数JSON一样,我见过它包含用下划线分隔的长键。本质上,我的目标是将JSON反序列化为Java对象,但我不在Java代码中使用下划线。 例如,我可能有一个驼峰式User带有firstName字段的类,同时我还需要某种方式告诉杰克逊将first_name密钥从JSON 映射到firstName类字段。可能吗? class User{ protected String firstName; protected String getFirstName(){return firstName;} }
160 java  jackson 

9
日期格式映射到JSON Jackson
我有一个来自API的Date格式,如下所示: "start_time": "2015-10-1 3:00 PM GMT+1:00" 这是YYYY-DD-MM HH:MM am / pm GMT时间戳。我将此值映射到POJO中的Date变量。显然,其显示转换错误。 我想知道两件事: 与Jackson进行转换时,我需要使用哪种格式?Date是否适合此字段类型? 通常,是否有一种方法可以在Jackson将变量映射到Object成员之前对其进行处理?诸如更改格式,计算等。
154 java  json  date  jackson  pojo 

10
序列化和反序列化过程中JSON属性的不同名称
是否有可能:类中有一个字段,而在Jackson库中进行序列化/反序列化时却有不同的名称? 例如,我有“ Coordiantes”类。 class Coordinates{ int red; } 对于从JSON反序列化,希望具有以下格式: { "red":12 } 但是当我序列化对象时,结果应该是这样的: { "r":12 } 我试图通过@JsonProperty在getter和setter上都应用注释(具有不同的值)来实现此目的: class Coordiantes{ int red; @JsonProperty("r") public byte getRed() { return red; } @JsonProperty("red") public void setRed(byte red) { this.red = red; } } 但我有一个例外: org.codehaus.jackson.map.exc.UnrecognizedPropertyException:无法识别的字段“红色”
149 java  json  jackson 

12
杰克逊-使用泛型类反序列化
我有一个json字符串,应该将其反序列化为以下类 class Data &lt;T&gt; { int found; Class&lt;T&gt; hits } 我该怎么做?这是通常的方式 mapper.readValue(jsonString, Data.class); 但是我怎么提到T代表什么呢?
147 java  json  generics  jackson 

4
将JsonNode转换成POJO
这似乎有点不正常,但我在寻找一个有效的方式来变换/映射JsonNode成POJO。 我将模型的一些信息存储在json文件中,并且我必须支持模型的几个版本。 我要做的是将json文件加载到JsonNode的内存中,应用一些版本控制策略以使其与我的Model的最新版本匹配。 ObjectMapper mapper = new ObjectMapper(); BufferedReader fileReader = new BufferedReader(new FileReader(projPath)); JsonNode rootNode = mapper.readTree(fileReader); //Upgrade our file in memory applyVersioningStrategy(rootNode); ProjectModel project = mapJsonNodeToProject(rootNode); 除非有更快的方法,否则我可能最终将手动将其JsonNodes应用于模型
143 java  json  jackson 

8
从Jackson 2.2的ObjectMapper漂亮地打印JSON
现在,我有一个实例,org.fasterxml.jackson.databind.ObjectMapper并希望String使用漂亮的JSON 来获取一个。Google搜索的所有结果都提供了Jackson 1.x的实现方法,而我似乎找不到使用2.2的正确,不建议使用的方法。即使我不认为代码对于此问题绝对必要,这也是我现在拥有的: ObjectMapper mapper = new ObjectMapper(); mapper.setSerializationInclusion(Include.NON_NULL); System.out.println("\n\n----------REQUEST-----------"); StringWriter sw = new StringWriter(); mapper.writeValue(sw, jsonObject); // Want pretty version of sw.toString() here
140 java  json  jackson 

8
Jackson序列化:忽略空值(或null)
我当前正在使用杰克逊2.1.4,并且在将对象转换为JSON字符串时忽略字段时遇到一些麻烦。 这是我的类,它充当要转换的对象: public class JsonOperation { public static class Request { @JsonInclude(Include.NON_EMPTY) String requestType; Data data = new Data(); public static class Data { @JsonInclude(Include.NON_EMPTY) String username; String email; String password; String birthday; String coinsPackage; String coins; String transactionId; boolean isLoggedIn; } } public static class Response { @JsonInclude(Include.NON_EMPTY) String …
138 java  json  jackson 

14
Java 8 LocalDate Jackson格式
对于java.util.Date当我做 @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd/MM/yyyy") private Date dateOfBirth; 然后在发送JSON请求时 { {"dateOfBirth":"01/01/2000"} } 有用。 我应如何针对Java 8的LocalDate字段执行此操作? 我尝试过 @JsonDeserialize(using = LocalDateDeserializer.class) @JsonSerialize(using = LocalDateSerializer.class) private LocalDate dateOfBirth; 没用 有人可以让我知道这样做的正确方法是.. 以下是依赖项 &lt;dependency&gt; &lt;groupId&gt;org.jboss.resteasy&lt;/groupId&gt; &lt;artifactId&gt;jaxrs-api&lt;/artifactId&gt; &lt;version&gt;3.0.9.Final&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;com.fasterxml.jackson.jaxrs&lt;/groupId&gt; &lt;artifactId&gt;jackson-jaxrs-json-provider&lt;/artifactId&gt; &lt;version&gt;2.4.2&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;com.wordnik&lt;/groupId&gt; &lt;artifactId&gt;swagger-annotations&lt;/artifactId&gt; &lt;version&gt;1.3.10&lt;/version&gt; &lt;/dependency&gt;
138 java  json  jackson  jax-rs  resteasy 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.