abstrakt:import java.io.IOException; import com.alibaba.fastjson.JSON; import com.fasterxml.jackson.core.JsonParser; import com.faster
import java.io.IOException; import com.alibaba.fastjson.JSON; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; public class JsonUtil { /** * 將字符串轉(zhuǎn)成實(shí)體類,允許斜杠等字符串 */ public static <T> T jsonToEntity(String json, Class<T> clazz) throws IOException { ObjectMapper mapper = new ObjectMapper(); // 允許反斜桿等字符 mapper.configure(JsonParser.Feature.ALLOW_UNQUOTED_CONTROL_CHARS,true); return mapper.readValue(json, clazz); } /** * 實(shí)體類轉(zhuǎn)JSON字符串 */ public static String entityToJson(Object entity){ return JSON.toJSONString(entity); } /** * 將字符串轉(zhuǎn)成JsonNode,允許斜杠等字符串 */ public static JsonNode jsonToJsonNode(String json) throws IOException { ObjectMapper mapper = new ObjectMapper(); // 允許反斜桿等字符 mapper.configure(JsonParser.Feature.ALLOW_UNQUOTED_CONTROL_CHARS,true); //允許單引號(hào) mapper.configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES,true); return mapper.readValue(json, JsonNode.class); } public static <T> String objectToJson(Object object, Class<T> cls)throws Exception { ObjectMapper mapper = new ObjectMapper(); mapper.registerSubtypes(cls); String reqJson = mapper.writeValueAsString(object); return reqJson; } }