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);
本文介绍了一个Java类NoticeResponse的设计与实现,该类用于处理通知响应,并提供了与XML和JSON格式相互转换的方法。同时展示了如何使用Jackson库进行JSON序列化和反序列化。
1万+

被折叠的 条评论
为什么被折叠?



