Advertisement
Guest User

Untitled

a guest
Nov 18th, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.88 KB | None | 0 0
  1. class CustomJsonDeserializer<T, F extends T> extends JsonDeserializer<T> {
  2.    
  3.     private final Class<F> typeParameterClass;
  4.    
  5.     public CustomJsonDeserializer(Class<F> typeParameterClass) {
  6.         this.typeParameterClass = typeParameterClass;
  7.     }
  8.    
  9.     @Override
  10.     public T deserialize(JsonParser jp, DeserializationContext deserializationContext) throws IOException {
  11.         ObjectMapper mapper = (ObjectMapper) jp.getCodec();
  12.         ObjectNode root = mapper.readTree(jp);
  13.         return mapper.readValue(root.toString(), typeParameterClass);
  14.     }
  15.    
  16. }
  17.  
  18. class CustomObjectMapper extends ObjectMapper {
  19.    
  20.     public CustomObjectMapper(){
  21.         SimpleModule simpleModule = new SimpleModule();
  22.         CustomJsonDeserializer<IScene, SceneDTO> customJsonDeserializer = new CustomJsonDeserializer<>(SceneDTO.class);
  23.        
  24.         simpleModule.addSerializer(SceneDTO.class, customJsonDeserializer);
  25.        
  26.         registerModule(simpleModule);
  27.     }
  28. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement