Spring + Jackson:如何在不使用@JsonAutoDetect批注的情况下设置类的可见性

junhanlin

在我的spring-boot应用程序中,我在Jackson的ObjectMapper上进行了全局配置,该配置告诉Jackson不要按字段对对象进行序列化,而应按getter进行序列化:

@Bean
public Jackson2ObjectMapperBuilder objectMapperBuilder()
{
    return new Jackson2ObjectMapperBuilder()
    {

        @Override
        public void configure(ObjectMapper objectMapper)
        { 
            super.configure(objectMapper);
            objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
            objectMapper.setVisibility(PropertyAccessor.FIELD, Visibility.NONE);
            objectMapper.setVisibility(PropertyAccessor.GETTER, Visibility.PUBLIC_ONLY);
            objectMapper.setVisibility(PropertyAccessor.IS_GETTER, Visibility.PUBLIC_ONLY);

        }

    };
}

但是,现在我正在处理一个特例。我需要序列化一个不是由我自己编写的类(类依赖库)。由于该类未声明吸气剂,因此Jackson将忽略这些字段。外部类如下所示:

public class DirectionsResult 
{
  public GeocodedWaypoint geocodedWaypoints[];
  public DirectionsRoute routes[];
}

尽管使用@JsonAutoDetect注释可以使Jackson的类的可见性客户化,但这不适用于外部类。那么,如何在不使用@JsonAutoDetect注释且不更改全局配置的情况下设置类的可见

马丁·弗雷(Martin Frey)

您应该能够使用杰克逊MixIn功能。使用这种方法,您可以通过选择的另一个类定义来控制一个类的所有配置。

https://github.com/FasterXML/jackson-docs/wiki/JacksonMixInAnnotations

您还可以签出我的github项目之一,以查看该功能的用法:

https://github.com/Antibrumm/jackson-antpathfilter

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在不进行组件扫描的情况下设置Spring Data JPA存储库

来自分类Dev

Java-如何在不使用C:\\ Direcory的情况下设置图像路径

来自分类Dev

如何使用Spring ContentNegotiatingViewResolver设置MappingJackson2JsonView使用的默认ObjectMapper的可见性

来自分类Dev

Spring如何在不使用@Component或其他派生工具的情况下自动装配组件

来自分类Dev

如何在类级变量中使用Spring @Value批注

来自分类Dev

如何在WPF中设置ProgessBar的可见性?

来自分类Dev

SPA和Spring-如何在不使用.html后缀的情况下加载需要路由参数的AngularJS'资源'

来自分类Dev

如何在不使用查询缓存的情况下缓存Spring Data JPA查询方法的结果?

来自分类Dev

如何在不使用条件if语句的情况下设置类不变式

来自分类Dev

如何在不使用XML的情况下使用Spring启动H2 WebServer?

来自分类Dev

如何在不使用jQuery的情况下设置数组以获取单选按钮值

来自分类Dev

如何在不使用批注的情况下创建Spring控制器?

来自分类Dev

如何在不使用“权限”的情况下使用Spring Security的JDBC身份验证?

来自分类Dev

SceneBuilder中的JavaFx StackPane,如何在不设置禁用其他可见性的情况下仅使前面板可见?

来自分类Dev

如何在不使用任何SSE指令的情况下设置__m128i?

来自分类Dev

如何在不使用ComponentScan的情况下启动Spring Boot Web应用程序

来自分类Dev

Dapper如何在不使用setter的情况下设置属性

来自分类Dev

如何在不使用MongoTemplate的情况下在MongoDB上实现Spring-MVC CRUD操作

来自分类Dev

如何在不使用终端的情况下设置Qjackctl?

来自分类Dev

如何在不使用Eclipse的情况下在Spring和Maven中运行HelloWorld程序

来自分类Dev

如何在不使用Eclipse的情况下设置Tomcat的引导程序条目?

来自分类Dev

如何在不使用jQuery的情况下设置选择选项值?

来自分类Dev

VBA,Excel如何在不使用样式名称的情况下设置特定样式?

来自分类Dev

如何使用Spring ContentNegotiatingViewResolver设置MappingJackson2JsonView使用的默认ObjectMapper的可见性

来自分类Dev

如何在不使用路由器的情况下设置下载速度限制限制?

来自分类Dev

如何在不使用Ajax的情况下将隐藏值从jQuery传递到Spring MVC控制器

来自分类Dev

如何在不使用jQuery的情况下设置html节点的innerText和innerHtml?

来自分类Dev

如何在Spring中使用会话在不使用Spring Security的情况下设置用户配置文件

来自分类Dev

如何在不设置 AS3 可见性的情况下显示大量图像?

Related 相关文章

  1. 1

    如何在不进行组件扫描的情况下设置Spring Data JPA存储库

  2. 2

    Java-如何在不使用C:\\ Direcory的情况下设置图像路径

  3. 3

    如何使用Spring ContentNegotiatingViewResolver设置MappingJackson2JsonView使用的默认ObjectMapper的可见性

  4. 4

    Spring如何在不使用@Component或其他派生工具的情况下自动装配组件

  5. 5

    如何在类级变量中使用Spring @Value批注

  6. 6

    如何在WPF中设置ProgessBar的可见性?

  7. 7

    SPA和Spring-如何在不使用.html后缀的情况下加载需要路由参数的AngularJS'资源'

  8. 8

    如何在不使用查询缓存的情况下缓存Spring Data JPA查询方法的结果?

  9. 9

    如何在不使用条件if语句的情况下设置类不变式

  10. 10

    如何在不使用XML的情况下使用Spring启动H2 WebServer?

  11. 11

    如何在不使用jQuery的情况下设置数组以获取单选按钮值

  12. 12

    如何在不使用批注的情况下创建Spring控制器?

  13. 13

    如何在不使用“权限”的情况下使用Spring Security的JDBC身份验证?

  14. 14

    SceneBuilder中的JavaFx StackPane,如何在不设置禁用其他可见性的情况下仅使前面板可见?

  15. 15

    如何在不使用任何SSE指令的情况下设置__m128i?

  16. 16

    如何在不使用ComponentScan的情况下启动Spring Boot Web应用程序

  17. 17

    Dapper如何在不使用setter的情况下设置属性

  18. 18

    如何在不使用MongoTemplate的情况下在MongoDB上实现Spring-MVC CRUD操作

  19. 19

    如何在不使用终端的情况下设置Qjackctl?

  20. 20

    如何在不使用Eclipse的情况下在Spring和Maven中运行HelloWorld程序

  21. 21

    如何在不使用Eclipse的情况下设置Tomcat的引导程序条目?

  22. 22

    如何在不使用jQuery的情况下设置选择选项值?

  23. 23

    VBA,Excel如何在不使用样式名称的情况下设置特定样式?

  24. 24

    如何使用Spring ContentNegotiatingViewResolver设置MappingJackson2JsonView使用的默认ObjectMapper的可见性

  25. 25

    如何在不使用路由器的情况下设置下载速度限制限制?

  26. 26

    如何在不使用Ajax的情况下将隐藏值从jQuery传递到Spring MVC控制器

  27. 27

    如何在不使用jQuery的情况下设置html节点的innerText和innerHtml?

  28. 28

    如何在Spring中使用会话在不使用Spring Security的情况下设置用户配置文件

  29. 29

    如何在不设置 AS3 可见性的情况下显示大量图像?

热门标签

归档