/src/test/java/com/alibaba/json/bvtVO/DataTransaction.java

https://github.com/alibaba/fastjson · Java · 321 lines · 212 code · 85 blank · 24 comment · 0 complexity · e73eb3454c69ce75276786cd1635995f MD5 · raw file

  1. package com.alibaba.json.bvtVO;
  2. import java.io.Serializable;
  3. import java.util.ArrayList;
  4. import java.util.HashMap;
  5. import java.util.List;
  6. import java.util.Map;
  7. import com.alibaba.fastjson.JSON;
  8. /**
  9. * 交易消息体
  10. */
  11. @SuppressWarnings("rawtypes")
  12. public class DataTransaction implements Serializable {
  13. private static final long serialVersionUID = 1L;
  14. private Head head = new Head();
  15. private Body body = new Body();
  16. public DataTransaction(){
  17. }
  18. /**
  19. * Head
  20. **/
  21. public static class Head {
  22. private String appid;
  23. private String transcode;
  24. private String seqno;
  25. private User user = new User();
  26. private Ret ret = new Ret();
  27. /**
  28. * 用户信息
  29. */
  30. public static class User {
  31. private String id;
  32. public String getId() {
  33. return id;
  34. }
  35. public void setId(String id) {
  36. this.id = id;
  37. }
  38. }
  39. /**
  40. * 处理结果
  41. */
  42. public static class Ret {
  43. private String code;
  44. private String msg;
  45. public String getCode() {
  46. return code;
  47. }
  48. public void setCode(String code) {
  49. this.code = code;
  50. }
  51. public String getMsg() {
  52. return msg;
  53. }
  54. public void setMsg(String msg) {
  55. this.msg = msg;
  56. }
  57. }
  58. public String getAppid() {
  59. return appid;
  60. }
  61. public void setAppid(String appid) {
  62. this.appid = appid;
  63. }
  64. public String getTranscode() {
  65. return transcode;
  66. }
  67. public void setTranscode(String transcode) {
  68. this.transcode = transcode;
  69. }
  70. public String getSeqno() {
  71. return seqno;
  72. }
  73. public void setSeqno(String seqno) {
  74. this.seqno = seqno;
  75. }
  76. public User getUser() {
  77. return user;
  78. }
  79. public void setUser(User user) {
  80. this.user = user;
  81. }
  82. public Ret getRet() {
  83. return ret;
  84. }
  85. public void setRet(Ret ret) {
  86. this.ret = ret;
  87. }
  88. public void setRetCode(String code) {
  89. this.ret.code = code;
  90. }
  91. public void setRetMsg(String msg) {
  92. this.ret.msg = msg;
  93. }
  94. }
  95. /**
  96. * Body
  97. */
  98. public static class Body {
  99. private Param param = new Param();
  100. private DataSet dataset;
  101. public Body(){
  102. }
  103. /**
  104. * 参数
  105. */
  106. public static class Param {
  107. private Limit limit = new Limit();
  108. private Map<String, String> form = new HashMap<String, String>();
  109. /**
  110. * 分页信息
  111. */
  112. public static class Limit {
  113. private String start;
  114. private String size;
  115. private String total;
  116. private String orderBy;
  117. public String getStart() {
  118. return start;
  119. }
  120. public void setStart(String start) {
  121. this.start = start;
  122. }
  123. public String getSize() {
  124. return size;
  125. }
  126. public void setSize(String size) {
  127. this.size = size;
  128. }
  129. public String getTotal() {
  130. return total;
  131. }
  132. public void setTotal(String total) {
  133. this.total = total;
  134. }
  135. public String getOrderBy() {
  136. return orderBy;
  137. }
  138. public void setOrderBy(String orderBy) {
  139. this.orderBy = orderBy;
  140. }
  141. }
  142. public Limit getLimit() {
  143. return limit;
  144. }
  145. public void setLimit(Limit limit) {
  146. this.limit = limit;
  147. }
  148. public Map<String, String> getForm() {
  149. return form;
  150. }
  151. public void setForm(Map<String, String> form) {
  152. this.form = form;
  153. }
  154. }
  155. /**
  156. * 数据集
  157. */
  158. public static class DataSet {
  159. private String total;
  160. private List rows = new ArrayList();
  161. public String getTotal() {
  162. return total;
  163. }
  164. public void setTotal(String total) {
  165. this.total = total;
  166. }
  167. public List getRows() {
  168. return rows;
  169. }
  170. public void setRows(List rows) {
  171. this.rows = rows;
  172. }
  173. }
  174. public Param getParam() {
  175. return param;
  176. }
  177. public void setParam(Param param) {
  178. this.param = param;
  179. }
  180. public DataSet getDataset() {
  181. return dataset;
  182. }
  183. public void setDataset(DataSet dataset) {
  184. this.dataset = dataset;
  185. }
  186. public void setDataset(String total, List rows) {
  187. DataSet ds = new DataSet();
  188. ds.setTotal(total);
  189. ds.setRows(rows);
  190. this.setDataset(ds);
  191. }
  192. }
  193. public Head getHead() {
  194. return head;
  195. }
  196. public Body getBody() {
  197. return body;
  198. }
  199. public void setRetMsgCode(String code, String msg) {
  200. this.head.setRetCode(code);
  201. this.head.setRetMsg(msg);
  202. }
  203. public void setRetMsgCode(String code) {
  204. this.setRetMsgCode(code, null);
  205. }
  206. public void setDataSet(String total, List rows) {
  207. this.body.setDataset(total, rows);
  208. }
  209. public static DataTransaction fromJSON(String jsonString) {
  210. return JSON.parseObject(jsonString, DataTransaction.class);
  211. }
  212. public String toJSON() {
  213. return JSON.toJSONString(this);
  214. }
  215. public static void main(String args[]) {
  216. DataTransaction dt = new DataTransaction();
  217. List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
  218. Map<String, Object> m = new HashMap<String, Object>();
  219. m.put("name", "tom");
  220. m.put("sex", "m");
  221. list.add(m);
  222. dt.setDataSet("1000", list);
  223. dt.setRetMsgCode("1", "ok");
  224. dt.getHead().setAppid("back");
  225. dt.getHead().setSeqno("201010");
  226. dt.getHead().getUser().setId("root");
  227. Map<String, String> m2 = new HashMap<String, String>();
  228. m2.put("name1", "tom");
  229. m2.put("name2", "tom");
  230. m2.put("name3", "tom");
  231. dt.getBody().getParam().setForm(m2);
  232. System.out.println(dt.toJSON());
  233. DataTransaction dt2 = DataTransaction.fromJSON(dt.toJSON());
  234. System.out.println(dt2.toJSON());
  235. }
  236. }