在我的spring boot应用程序中,我使用jackson通过在需要的地方注入objectmapper
来序列化对象。我找到了这样的答案:https://stackoverflow.com/a/32842962/447426,但这一个创建了一个新的映射器--使用jacksons的默认设置。
另一方面,我在官方文件中发现了这一点。我不是很明白。没有示例代码。
那么如何在spring默认对象映射器的基础上配置springs ObjectMapper呢?
该配置在“ObjectMapper”上应该是活动的。
另一方面,我在官方文件中发现了这一点。我真的没听懂。没有示例代码。
这只是说,您只需要在application.properties
文件中设置正确的属性,就可以启用或禁用各种jackson特性。
spring.jackson.mapper.default-view-inclusion=false
spring.jackson.deserialization.fail-on-unknown-properties=false
为此,您应该使用Jackson2ObjectMapperBuilderCustomizer
@Configuration
public class JacksonConfiguration {
@Bean
public Jackson2ObjectMapperBuilderCustomizer addCustomBigDecimalDeserialization() {
return new Jackson2ObjectMapperBuilderCustomizer() {
@Override
public void customize(Jackson2ObjectMapperBuilder jacksonObjectMapperBuilder) {
jacksonObjectMapperBuilder.featuresToDisable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
// Add your customization
// jacksonObjectMapperBuilder.featuresToEnable(...)
}
};
}
}
因为Jackson2ObjectMapperBuilderCustomizer
是一个函数,所以Java 8支持更紧凑的代码:
@Configuration
public class JacksonConfiguration {
@Bean
public Jackson2ObjectMapperBuilderCustomizer addCustomBigDecimalDeserialization() {
return builder -> {
builder.featuresToDisable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
// Add your customization
// builder.featuresToEnable(...)
};
}
}
}
我使用Java和Jackson库将JSON文件解析为Java类。我的问题是,如果值为null或空,我无法设置默认值。有可能吗?现在,我只是把它写在setters部分。 例如,我有一个JSON文件 在我的Java类中,如果值为null或空,我想将其设置为Java函数。 举个例子 所以,如果设置了这个值,那么就是它。如果不是,那应该是美国。
本文向大家介绍如何在Java中使用Jackson来获取JSONParser默认设置?,包括了如何在Java中使用Jackson来获取JSONParser默认设置?的使用技巧和注意事项,需要的朋友参考一下 JSON Parser的 所有默认设置都可以使用JsonParser.Feature枚举来表示。该JsonParser.Feature.values()将返回所有可用的功能JSONParser
昨天我启动了一个Android Things项目,我正在使用Android Studio测试该应用程序。以便使用
我有一个spring引导应用程序,其中默认属性设置在类路径(src/main/resources/application.properties)中的文件中。 我想用文件(src/test/resources/test.properties)中声明的属性重写JUnit测试中的一些默认设置 我通常有一个专用的配置类用于我的Junit测试,例如。 我首先认为在TestConfig类中使用就可以完成任务,
问题内容: 我在同一包中有2个班级。这两个类都具有main方法。现在,我想构建一个jar文件。我想建立2个jar文件,这些文件使用不同的主要功能作为默认主要功能。 例如 如何在NetBeans IDE中进行操作? 我找到了答案。您可以在netbeans中轻松地做到这一点:1)右键单击项目>属性>运行>选择类frm并下拉列表。在netbeans中是如此简单。Netbeans摇摇欲坠! 问题答案: 在
问题内容: 使用jersey jersey.java.net当URI中没有接受标头或.xml后缀时,如何将JSON设置为默认序列化而不是XML? 问题答案: 您可以在@Produces批注中为每种媒体类型分配质量索引。如果可以同时允许XML和JSON,则可以执行以下操作以使Jersey偏爱JSON: