草庐IT

jackson-databind

全部标签

java - 如何将 Jackson ObjectMapper 与 Guice/Jersey Hook

我似乎无法正确注册我的JacksonObjectMapper模块。我正在使用Guice+Jersey+Jackson(FasterXML)堆栈。我已经了解了如何根据此处的各种问题自定义ObjectMapper。特别是,我声明了一个ContextResolver,标记为@javax.ws.rs.ext.Provider和@javax.inject.Singleton。我有一个GuiceServletContextListener:@OverrideprotectedInjectorgetInjector(){Injectorinjector=Guice.createInjector(ne

java - 使用 Jackson ObjectMapper 时如何忽略 pojo 注释?

我有一个带有Jackson注释的POJOpublicclassSample{privateStringproperty1;@JsonIgnoreprivateStringproperty2;//...settersgetters}因此,当Jackson库被其他框架(如RestEasy)用于自动编码时,这些注释有助于指导序列化和反序列化过程。但是当我想使用ObjectMappermapper=newObjectMapper()显式序列化时,我不希望这些注释产生任何效果,而是根据我的要求配置映射器对象。那么,如何在使用ObjectMapper时让注解不生效呢?

java - Jackson: JsonInclude 如何添加多个 JsonInclude 注解类型

我如何告诉一个类只包含NON_EMPTY和NON_NULL值,使用@JsonInclude(Include.NON_NULL)@JsonInclude(Include.NON_EMPTY)publicclassfoo{Stringa;}正在抛出重复注释的错误。 最佳答案 “Null总是被认为是空的”-Jackson'ssite所以NON_EMPTY规则涵盖了这两种情况.. 关于java-Jackson:JsonInclude如何添加多个JsonInclude注解类型,我们在StackOv

java - Jackson 的不可变 Lombok 注释类

创建类的首选方法是什么不可变可以用Jackson序列化/反序列化人类可读且样板级别低最好,我会喜欢这样的工作:@Data(onConstructor=@__(@JsonCreator))然后将所有字段设为privatefinal。但是,这甚至无法编译(我不确定为什么)。使用@AllArgsConstructor(onConstructor=@__(@JsonCreator))会编译但只会产生InvalidDefinitionException:Noserializerfoundforclass 最佳答案 添加ConstructorP

java - 在 Java 中使用 Jackson 反序列化异常/throwable 时出现问题

我在使用Jackson(版本2.2.1)反序列化Exception和Throwable实例时遇到问题。考虑以下代码段:publicstaticvoidmain(String[]args)throwsIOException{ObjectMapperobjectMapper=newObjectMapper();objectMapper.configure(SerializationFeature.INDENT_OUTPUT,true);objectMapper.setVisibility(PropertyAccessor.FIELD,Visibility.ANY);objectMapper

java - Jackson - 使用动态 key 反序列化 json

我有以下JSON:{"2016-01-23":{"downloads":4,"re_downloads":1,"updates":0,"returns":0,"net_downloads":4,"promos":0,"revenue":"0.00","returns_amount":"0.00","edu_downloads":0,"gifts":0,"gift_redemptions":0,"date":"2016-01-23"},"2016-01-24":{"downloads":1,"re_downloads":1,"updates":0,"returns":0,"net_dow

java - 如何阻止 jackson 的 YAML 编写器引用值

我正在从事一个将文件从JSON转换为YAML的项目。我正在使用以下库的2.8.3版本:jackson核心jackson数据绑定(bind)jackson-dataformat-yamljackson注释我的YAML序列化代码非常简单:ObjectMappermapper=newObjectMapper(newYAMLFactory());ObjectWriterwriter=mapper.writer();try{SequenceWritersw=writer.writeValues(System.out);sw.write(tree);}catch(IOExceptione){e.p

java - Jackson 没有使用 @JsonProperty 覆盖 Getter

JsonProperty并未覆盖jackson从getter获取的默认名称。如果我用ObjectMapper和jackson序列化下面的类,我会得到{"hi":"hello"}如您所见,JsonProperty注解没有效果classJacksonTester{Stringhi;@JsonProperty("hello")publicStringgetHi(){returnhi;}}将@JsonProperty放在字符串本身上也不起作用。似乎我可以更改名称的唯一方法是重命名setter/getter,唯一的问题是第一个字母总是小写 最佳答案

java.lang.ClassNotFoundException : org. 代码豪斯.jackson.map.JsonSerializableWithType

我的构建路径中有Jackson2.2.3,但我仍然遇到此错误。有人知道为什么吗?com.sun.jersey.core.spi.component.ProviderFactory__getComponentProvider:Theproviderclass,classcom.sun.jersey.json.impl.provider.entity.JSONWithPaddingProvider,couldnotbeinstantiated.Processingwillcontinuebuttheclasswillnotbeutilizedjava.lang.SecurityExcept

java - 自定义 Jackson HttpMessageConverter 在 Spring 4.2 中不再有效

我正在将一个应用程序从SpringPlatform版本1.1.3.RELEASE更新到2.0.1.RELEASE,这将SpringFramework版本从4.1.7升级到4.2.4,将Jackson从2.4.6升级到2.6.4。Spring或Jackson对自定义HttpMessageConverter实现的处理似乎没有任何重大变化,但我的自定义JSON序列化未能发生,我无法确定原因。以下在之前的SpringPlatform版本中运行良好:型号@JsonFilter("fieldFilter")publicclassMyModel{/*modelfieldsandmethods*/}模