content: package com.example.demo.config;
  
  import com.fasterxml.jackson.datatype.hibernate5.Hibernate5Module;
  import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
  import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
  import org.springframework.context.annotation.Bean;
  import org.springframework.context.annotation.Configuration;
  import org.zalando.problem.jackson.ProblemModule;
  import org.zalando.problem.violations.ConstraintViolationProblemModule;
  
  @Configuration
  public class JacksonConfiguration {
  
      /**
       * Support for Java date and time API.
       * @return the corresponding Jackson module.
       */
      @Bean
      public JavaTimeModule javaTimeModule() {
          return new JavaTimeModule();
      }
  
      @Bean
      public Jdk8Module jdk8TimeModule() {
          return new Jdk8Module();
      }
  
      /*
       * Support for Hibernate types in Jackson.
       */
      @Bean
      public Hibernate5Module hibernate5Module() {
          return new Hibernate5Module();
      }
  
      /*
       * Module for serialization/deserialization of RFC7807 Problem.
       */
      @Bean
      public ProblemModule problemModule() {
          return new ProblemModule();
      }
  
      /*
       * Module for serialization/deserialization of ConstraintViolationProblem.
       */
      @Bean
      public ConstraintViolationProblemModule constraintViolationProblemModule() {
          return new ConstraintViolationProblemModule();
      }
  }
  