- import java.io.StringWriter;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import org.codehaus.jackson.JsonFactory;
- import org.codehaus.jackson.JsonGenerator;
- import org.codehaus.jackson.JsonParser;
- import org.codehaus.jackson.map.DeserializationConfig.Feature;
- import org.codehaus.jackson.map.MappingJsonFactory;
- import org.codehaus.jackson.map.ObjectMapper;
- import org.codehaus.jackson.type.JavaType;
- public class JsonUtils {
- public static <K, V> String toJson(Map<K, V> obj) {
- String jsonString = "";
- try {
- if (obj == null) {
- return "";
- }
- StringWriter sw = new StringWriter();
- JsonGenerator gen = new JsonFactory().createJsonGenerator(sw);
- ObjectMapper mapper = new ObjectMapper();
- mapper.writeValue(gen, obj);
- jsonString = sw.toString();
- sw.close();
- } catch (Exception ex) {
- ex.printStackTrace();
- return "";
- }
- return jsonString;
- }
- @SuppressWarnings("unchecked")
- public static Map<String, Object> toMap(String json) {
- Map<String, Object> result = new HashMap<String, Object>();
- try {
- if (json == null || json.equals("")) {
- return null;
- }
- ObjectMapper objectMapper = new ObjectMapper();
- result = objectMapper.readValue(json, Map.class);
- if (result == null) {
- return new HashMap<String, Object>();
- }
- } catch (Exception ex) {
- ex.printStackTrace();
- }
- return result;
- }
- public static String toJson(Object object) {
- String json = "";
- try {
- if (object == null) {
- return "";
- }
- StringWriter sw = new StringWriter();
- JsonGenerator gen = new JsonFactory().createJsonGenerator(sw);
- ObjectMapper mapper = new ObjectMapper();
- mapper.writeValue(gen, object);
- json = sw.toString();
- sw.close();
- } catch (Exception ex) {
- ex.printStackTrace();
- json = "";
- }
- return json;
- }
- public static <T> T toObject(String json, Class<T> clazz) {
- T obj = null;
- try {
- if (json == null || json.equals("")) {
- return null;
- }
- JsonFactory jsonFactory = new MappingJsonFactory();
- JsonParser jsonParser = jsonFactory.createJsonParser(json);
- ObjectMapper mapper = new ObjectMapper();
- mapper.configure(Feature.FAIL_ON_UNKNOWN_PROPERTIES,false);
- //mapper.getDeserializationConfig().set(Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);
- obj = mapper.readValue(jsonParser, clazz);
- } catch (Exception ex) {
- ex.printStackTrace();
- obj = null;
- }
- return obj;
- }
- public static <T> List<T> toList(String json, Class<T> clazz) {
- if (json == null || json.equals("")) {
- return null;
- }
- ObjectMapper mapper = new ObjectMapper();
- mapper.configure(Feature.FAIL_ON_UNKNOWN_PROPERTIES,false);
- List<T> list = new ArrayList<T>();
- try {
- JavaType type = mapper.getTypeFactory().constructParametricType(List.class, clazz);
- list = mapper.readValue(json, type);
- return list;
- } catch (Exception e) {
- e.printStackTrace();
- }
- return list;
- }
- }
jackson 使用(java jar-jackson-all-1.9.0jar自行下载)
最新推荐文章于 2024-06-13 15:05:55 发布