bean to json

来源:互联网 发布:vb趣味小游戏编程代码 编辑:程序博客网 时间:2024/05/01 07:25
public class NoticeResponse {   private static XStream xstream;   private Boolean result;   private String returnCode;   private String message;   private Object data;   public NoticeResponse() {   }   public NoticeResponse(Boolean result, String returnCode, String message) {      this.result = result;      this.returnCode = returnCode;      this.message = message;   }   public Boolean getResult() {      return result;   }   public void setResult(Boolean result) {      this.result = result;   }   public String getReturnCode() {      return returnCode;   }   public void setReturnCode(String returnCode) {      this.returnCode = returnCode;   }   public String getMessage() {      return message;   }   public void setMessage(String message) {      this.message = message;   }   public Object getData() {      return data;   }   public void setData(Object data) {      this.data = data;   }   private static XStream getXStream() {      if (xstream == null) {         xstream = new XStream();         xstream.autodetectAnnotations(true);         xstream.alias("pushResponse", NoticeResponse.class);      }      return xstream;   }   public String toXml(){      return "<?xml version='1.0' encoding='UTF-8'?>\r\n" + getXStream().toXML(this);   }   public static NoticeResponse fromXml(String sXml){      return (NoticeResponse)getXStream().fromXML(sXml);   }   public static void main(String[] args){      NoticeResponse req = new NoticeResponse();      req.setMessage("成功");      req.setResult(true);      req.setReturnCode("200");      req.setData(null);      System.out.print(req.toXml());   }                                                                                                                
import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.io.OutputStreamWriter;import java.io.StringWriter;import java.util.ArrayList;import java.util.List;import org.codehaus.jackson.JsonGenerationException;import org.codehaus.jackson.JsonParseException;import org.codehaus.jackson.map.JsonMappingException;import org.codehaus.jackson.map.ObjectMapper;import org.codehaus.jackson.map.DeserializationConfig.Feature;import org.codehaus.jackson.map.type.TypeFactory;

public class JacksonHelper {    private static ObjectMapper toJSONMapper = new ObjectMapper();    private static ObjectMapper fromJSONMapper = new ObjectMapper();    public JacksonHelper() {    }    public static String toJSON(Object obj) {        ObjectMapper mapper = toJSONMapper;        StringWriter writer = new StringWriter();        try {            mapper.writeValue(writer, obj);        } catch (JsonGenerationException var4) {            throw new RuntimeException(var4);        } catch (JsonMappingException var5) {            throw new RuntimeException(var5);        } catch (IOException var6) {            throw new RuntimeException(var6);        }        return writer.toString();    }    public static void toJSON(Object obj, OutputStream stream, String charset) {        ObjectMapper mapper = toJSONMapper;        try {            OutputStreamWriter e = new OutputStreamWriter(stream, charset);            mapper.writeValue(e, obj);        } catch (JsonGenerationException var5) {            throw new RuntimeException(var5);        } catch (JsonMappingException var6) {            throw new RuntimeException(var6);        } catch (Exception var7) {            throw new RuntimeException(var7);        }    }    public static <T> T fromJSON(String json, Class<T> clazz) {        ObjectMapper mapper = fromJSONMapper;        try {            return mapper.readValue(json, clazz);        } catch (JsonParseException var4) {            throw new RuntimeException(var4);        } catch (JsonMappingException var5) {            throw new RuntimeException(var5);        } catch (IOException var6) {            throw new RuntimeException(var6);        }    }    public static <T> T fromJSON(InputStream json, Class<T> clazz) {        ObjectMapper mapper = fromJSONMapper;        try {            return mapper.readValue(json, clazz);        } catch (JsonParseException var4) {            throw new RuntimeException(var4);        } catch (JsonMappingException var5) {            throw new RuntimeException(var5);        } catch (IOException var6) {            throw new RuntimeException(var6);        }    }    public static <T> boolean toJSONList(List<T> list) {        String jsonVal = null;        try {            jsonVal = toJSONMapper.writeValueAsString(list);        } catch (JsonGenerationException var3) {            throw new RuntimeException(var3);        } catch (JsonMappingException var4) {            throw new RuntimeException(var4);        } catch (IOException var5) {            throw new RuntimeException(var5);        }        return jsonVal != null;    }    public static <T> List<T> fromJSONList(String jsonVal, Class<?> clazz) {        List list = null;        try {            list = (List)fromJSONMapper.readValue(jsonVal, TypeFactory.collectionType(ArrayList.class, clazz));            return list;        } catch (JsonParseException var4) {            throw new RuntimeException(var4);        } catch (JsonMappingException var5) {            throw new RuntimeException(var5);        } catch (IOException var6) {            throw new RuntimeException(var6);        }    }    static {        fromJSONMapper.configure(Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);        fromJSONMapper.configure(org.codehaus.jackson.JsonParser.Feature.ALLOW_SINGLE_QUOTES, true);    }}
应用:
NoticeResponse resp = new NoticeResponse();resp.setResult(false);resp.setReturnCode("500");resp.setMessage("通过订单号获取用户订单详细失败");
String str = JacksonHelper.toJSON(resp);

原创粉丝点击