Tag: json

如何使用Google Json Parsing API(Gson)解析json中的一些动态字段?

我有一个结构化的Json在某些领域是可变的,我如何使用Gson google json api在Java中正确解析(反序列化)? Json的例子: { type: ‘sometype’, fields: { ‘dynamic-field-1’:[{value: ”, type: ”},…], ‘dynamic-field-2’:[{value: ”, type: ”},…], … } 动态字段将根据发送的结构更改其名称。 有办法吗?

使用jackson创建简单的JSON结构

我只想创建相当于以下的jackson映射: {\”isDone\”: true} 我想我需要创建一个这样的类: public class Status { private boolean isDone; public boolean isDone{ return this.isDone; } public void setDone(boolean isDone){ this.isDone = isDone; } } 但是如何实现它然后将JSON写入字符串?

如何使用java从Json文件导入Mongodb数据

我正在努力将数据从Json文件导入Mongodb 。 我可以使用mongoimport command在命令行中执行相同的操作。 我探索并尝试了很多,但无法使用java从Json文件导入。 sample.json { “test_id” : 1245362, “name” : “ganesh”, “age” : “28”, “Job” : {“company name” : “company1”, “designation” : “SSE” } } { “test_id” : 254152, “name” : “Alex”, “age” : “26”, “Job” : {“company name” : “company2”, “designation” : “ML” } } 谢谢你的时间。 〜Ganesh神〜

获取jackson的未知领域列表

我有一个JSON模式和一个匹配模式的json字符串,除了它可能有一些额外的字段。 如果我没有添加objectMapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);那么如果那些字段存在,jackson将抛出exceptionobjectMapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false); 。 有没有办法获取这些额外字段的集合来记录它们,即使我抛出exception? 这是代码的相关位: public boolean validate(Message json) { List errorList = jsonSchema.validate(json.getPayload()); ObjectMapper mapper = new ObjectMapper(); try { Update update = mapper.readValue(json.getPayload(), Update.class); } catch (IOException e) { System.out.println(“Broken”); } if(!errorList.isEmpty()) { LOG.warn(“Json message did not match schema: {}”, errorList); } return true; }

从Java中的JSON字符串中检测JSON模式

我一直在寻找一种方法来检测来自Java中JSON字符串的JSON对象的模式。 我发现将JSON字符串转换为POJO的方法很多,但我发现的所有示例都要求Java类将JSON转换为提前知道和定义。 我的JSON是数据,我不知道它的结构,所以我不能这样做。 我也看到很多方法将POJO序列化为JSON,大多数问题的答案是使用Jackson模块,但我仍然没有找到我的问题的答案: 我想读一个我不知道结构的JSON字符串,并检测它的模式。 有没有一个模块可以做到这一点? 我可以通过它来处理并处理不同的情况,但这必须在以前完成! 我知道我可以用类似的东西读JSON mapper = new org.codehaus.jackson.map.ObjectMapper(); JsonNode json = mapper.readTree(in); 我可以用Java来读取Java类的模式 JsonSchema schema = mapper.generateJsonSchema(myObjectClass.class); 但如果我这样做 JsonSchema schema = mapper.generateJsonSchema(json.getClass()); 无论JSON字符串输入是什么,我得到的就是: {“type”:“对象”} 那么,有谁知道如何检测我的未知对象的架构? 我认为这与从JsonNode正确构建POJO有关,但我不知道如何得到它。 感谢您的见解。

将Java对象转换为Json,反之亦然?

我知道JSON对象只不过是String 。 我的问题是我有一个对象Map,我想将其转换为Json格式。 示例: Java Class -> Class Person{ private String name; private String password; private int number; } Java list -> Map<List,List> map=new HashMap<List,List>(); ..and map has Some data filled in it. 我想将该列表转换为 Json Format? 我怎么能实现它? 因为我想通过HttpClient发送它…如果不是另一种替代方式呢? 据我所知,有Gson API可用,但我不知道如何使用它或以其他有效的方式。 谢谢

使用Jackson JSON Parser:复杂的JSON?

我有一个复杂的JSON,我试图使用Jackson JSON解析。 我对如何进入latLng对象以拉出lat,lng值感到有点困惑。 这是JSON的一部分: { “results”: [ { “locations”: [ { “latLng”: { “lng”: -76.85165, “lat”: 39.25108 }, “adminArea4”: “Howard County”, “adminArea5Type”: “City”, “adminArea4Type”: “County”, 到目前为止,我用Java来解决这个问题: public class parkJSON { public latLng _latLng; public static class latLng { private String _lat, _lng; public String getLat() { return _lat; } public String getLon() { return _lng; […]

你如何覆盖Jackson 2.0中的null序列化器?

我正在使用Jackson进行JSON序列化,并且我想覆盖null序列化程序 – 具体来说,因此空值在JSON中被序列化为空字符串而不是字符串“null”。 我在如何设置null序列化器时发现的所有文档和示例都是指Jackson 1.x – 例如, http: //wiki.fasterxml.com/JacksonHowToCustomSerializers底部的代码不再与Jackson 2.0编译因为库中不再存在StdSerializerProvider。 该网页描述了Jackson 2.0的模块接口,但模块接口没有明显的方法来覆盖null序列化器。 任何人都可以提供有关如何覆盖jackson2.0中的空序列化器的指针吗?

无法从START_ARRAY标记中反序列化java.util.HashMap的实例

使用jackson-core-2.7.3.jar解析JSON时遇到问题你可以从这里获取它们http://repo1.maven.org/maven2/com/fasterxml/jackson/core/ 我的JSON文件是 [ { “Name”: “System Idle Process”, “CreationDate”: “20160409121836.675345+330” }, { “Name”: “System”, “CreationDate”: “20160409121836.675345+330” }, { “Name”: “smss.exe”, “CreationDate”: “20160409121836.684966+330” } ] 而Java代码是我试图解析的 byte[] mapData = Files.readAllBytes(Paths.get(“process.txt”)); Map myMap = new HashMap(); ObjectMapper objectMapper=new ObjectMapper(); myMap = objectMapper.readValue(mapData, HashMap.class); System.out.println(“Map is: “+myMap); 但在执行时我收到了错误 com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of java.util.HashMap out of START_ARRAY […]

Java JSON -Jackson-嵌套元素

我的JSON字符串具有嵌套值。 就像是 “[{“listed_count”:1720,”status”:{“retweet_count”:78}}]” 我想要retweet_count的值。 我正在使用jackson。 下面的代码输出“ {retweet_count=78} ”而不是78 。 我想知道我是否能以PHP的方式获得嵌套值,即status->retweet_count 。 谢谢。 import java.io.IOException; import java.util.List; import java.util.Map; import org.codehaus.jackson.map.ObjectMapper; import org.codehaus.jackson.type.TypeReference; public class tests { public static void main(String [] args) throws IOException{ ObjectMapper mapper = new ObjectMapper(); List <Map> fwers = mapper.readValue(“[{\”listed_count\”:1720,\”status\”:{\”retweet_count\”:78}}]]”, new TypeReference<List <Map>>() {}); System.out.println(fwers.get(0).get(“status”)); } }