草庐IT

jackson-databind

全部标签

java - 如何使用 jackson 将 Json 数组写入文件

我创建了一个Json文件,我想在其中编写java对象作为Array元素。我正在使用jackson。try{Stringjson;StringphyPath=request.getSession().getServletContext().getRealPath("/");Stringfilepath=phyPath+"resources/"+"data.json";Filefile=newFile(filepath);if(!file.exists()){System.out.println("painai");file.createNewFile();}json=mapper.wri

java - ExceptionMapper 的 Jersey/Jackson 异常问题

我正在使用Jersey向外界提供JavaREST服务。我提供了一些采用JSON的函数,我将Jackson框架与jersey结合使用,将它们转换为POJO。我有一个问题,如果错误的jackson格式被发送到服务器,答案(http响应的内容)是一个jackson特定的异常描述。如果我有一个带有属性“surname”的POJO并将json字符串中的“sursname”发送到服务器,我得到:Unrecognizedfield"sursname"(ClassXY),notmarkedasignorableat[Source:sun.net.httpserver.FixedLengthInputS

java - 如何让 jackson 不使用默认值序列化原语

在Jackson中,可以在POJO上使用JsonSerialize注释以防止空对象被序列化(@JsonSerialize(include=JsonSerialize.Inclusion.NON_NULL))。但是,基元不能设置为null,因此此注释不适用于未被触及且默认为0的int之类的东西。是否有一个注释可以让我说“对于这个类,不要序列化原语,除非它们不同于它们的默认值”或“对于这个字段,如果它的值为X,不要序列化它“? 最佳答案 如果您使用的是Jackson的最新版本,您可以使用JsonInclude.Include.NON_D

java - jackson 反序列化对象或数组

我有一个jackson问题。有没有办法反序列化一个可能有两种类型的属性,对于某些对象,它看起来像这样"someObj":{"obj1":5,etc....}然后对于其他人来说它显示为一个空数组,即"someObj":[]感谢任何帮助!谢谢! 最佳答案 编辑:从Jackson2.5.0开始,您可以使用DeserializationFeature.ACCEPT_EMPTY_ARRAY_AS_EMPTY_OBJECT来解决您的问题。Bruce提供的解决方案有一些问题/缺点:您需要为需要以这种方式反序列化的每种类型复制该代码应该重用Obje

java - com.google.api.client.json.jackson.JacksonFactory; Google 云端硬盘示例中缺少

我尝试运行quickstart-sample,以及这种依赖性:com.google.apisgoogle-api-services-drivev2-rev78-1.15.0-rc来自DrivewikiAPIpage然而,当我尝试编译代码时,com.google.api.client.json.jackson.JacksonFactory;丢失了。要验证这一点,您只需执行第2步和第3步!我在哪里可以找到这个类或如何在示例中替换它? 最佳答案 可以找到Jackson图书馆在http://repo2.maven.org/maven2/co

Java 程序在 ObjectMapper.writeValue(System.out, responseData) 之后终止 - Jackson Library

我正在使用Jackson库创建JSON对象,但是当我使用mapper.writeValue(System.out,responseData)函数时,程序终止。这是我的代码:importjava.io.IOException;importjava.util.HashMap;importjava.util.Map;importorg.codehaus.jackson.JsonGenerationException;importorg.codehaus.jackson.map.JsonMappingException;importorg.codehaus.jackson.map.Object

java - 使用 Jackson 或 Gson 的 Jsonpath

我得到了一个很大的json文档,我只想将其中的一部分解析到我的java类中。我在考虑使用jsonpath之类的东西从中提取部分数据,而不是创建整个java类层次结构。Jackson或Gson是否以任何方式支持jsonpath?如果是,能否为此提供一些示例或指向另一个标准库?例如,假设我有一个下面的文档,我只想在我的Java类中从中提取下面的数据:$.store.book[0]-只有第一本书$.store.bicycle.price-自行车价格{"store":{"book":[{"category":"reference","author":"NigelRees","title":"S

java - 使用 Jackson 从 JSON 树中的特定节点映射对象

是否可以让Jackson的ObjectMapper仅从JSON树中的特定节点(和“向下”节点)解码?用例是一种可扩展的文档格式。我想遍历树,然后将当前路径发布到一组可扩展的插件,以查看用户是否正在使用知道如何处理文档的那部分的插件。我希望插件作者不必处理JsonNode或流式API的底层细节;相反,只需传递一些上下文和特定的JsonNode,然后能够使用可爱且方便的ObjectMapper解码其类的实例,考虑传递的节点树的根。 最佳答案 考虑以下JSON:{"firstName":"John","lastName":"Doe","a

java - jackson JSON + Java 泛型

我正在尝试将以下JSON反序列化/映射到List>使用Jacksonjson库的java对象。(此json由jackson生成,为简洁起见,我省略了那部分){"bills":[{"amount":"13","billId":"billid3"}]}这是我的转换方法:privatestaticvoidconvert(){StringjsonBill="{\"bills\":[{\"amount\":\"13\",\"billId\":\"billid3\"}]}";ObjectMappermapper=newObjectMapper();Listbills=null;try{bills=

java - Jersey、JAXB、JAX-RS、Moxy、Jackson、EclipseLink Moxy、json 和 xml 之间有什么关系?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion我有Node.js背景,对RESTfulWeb服务有很好的理解。现在我正在尝试使用Java构建RESTfulWeb服务。我了解核心Java,但对基于Java的Web开发完全陌生。我在学习了一些教程后得出结论,我需要使用Jersey框架来构建我的RESTfulAPI。我知道Jersey是JAX-RS的某种引用实现。但我无法理解遇到的各种其他术语和组件之间的关系,例如JAXB、Jackson、EclipseL