Newer
Older
alarm / src / com / casic / core / mapper / JsonMapper.java
zhout on 2 Mar 2022 1 KB first commit
 package com.casic.core.mapper;
 
 import com.fasterxml.jackson.databind.DeserializationFeature;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.util.JSONPObject;
 import java.io.IOException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 public class JsonMapper
 {
   private static Logger logger = LoggerFactory.getLogger(JsonMapper.class);
   private ObjectMapper mapper;
 
   public JsonMapper()
   {
     this.mapper = new ObjectMapper();
     this.mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
   }
 
   public String toJson(Object object) {
     try {
       return this.mapper.writeValueAsString(object);
     } catch (IOException e) {
       logger.warn("write to json string error:" + object, e);
     }
     return null;
   }
 
   public <T> T fromJson(String jsonString, Class<T> clazz)
   {
     if ((jsonString == null) || ("".equals(jsonString.trim()))) {
       return null;
     }
     try
     {
       return this.mapper.readValue(jsonString, clazz);
     } catch (IOException e) {
       logger.warn("parse json string error:" + jsonString, e);
     }
     return null;
   }
 
   public String toJsonP(String functionName, Object object)
   {
     return toJson(new JSONPObject(functionName, object));
   }
 }