Json学习整理
1:javascript对JSON的支持
2:java对JSON的支持
alibaba->fastjson
封装工具类:
1 import com.alibaba.fastjson.JSONObject;
2
3 public class JSONBuilder {
4 JSONObject json = new JSONObject();
5
6 public JSONBuilder put(String key, Object value) {
7 json.put(key, value);
8 return this;
9 }
10
11 @Override
12 public String toString() {
13 return json.toJSONString();
14 }
15 }
使用示例:
1 resp.getWriter().println( new JSONBuilder()
2 .put("statusCode", 300)
3 .put("message", "some msg ...")
4 .toString()
5 );
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
工具类
1 package com.taotao.common.utils;
2
3 import java.util.List;
4
5 import com.fasterxml.jackson.core.JsonProcessingException;
6 import com.fasterxml.jackson.databind.JavaType;
7 import com.fasterxml.jackson.databind.ObjectMapper;
8
9 /**
10 * 淘淘商城自定义响应结构
11 */
12 public class JsonUtils {
13
14 // 定义jackson对象
15 private static final ObjectMapper MAPPER = new ObjectMapper();
16
17 /**
18 * 将对象转换成json字符串。
19 * <p>Title: pojoToJson</p>
20 * <p>Description: </p>
21 * @param data
22 * @return
23 */
24 public static String objectToJson(Object data) {
25 try {
26 String string = MAPPER.writeValueAsString(data);
27 return string;
28 } catch (JsonProcessingException e) {
29 e.printStackTrace();
30 }
31 return null;
32 }
33
34 /**
35 * 将json结果集转化为对象
36 *
37 * @param jsonData json数据
38 * @param clazz 对象中的object类型
39 * @return
40 */
41 public static <T> T jsonToPojo(String jsonData, Class<T> beanType) {
42 try {
43 T t = MAPPER.readValue(jsonData, beanType);
44 return t;
45 } catch (Exception e) {
46 e.printStackTrace();
47 }
48 return null;
49 }
50
51 /**
52 * 将json数据转换成pojo对象list
53 * <p>Title: jsonToList</p>
54 * <p>Description: </p>
55 * @param jsonData
56 * @param beanType
57 * @return
58 */
59 public static <T>List<T> jsonToList(String jsonData, Class<T> beanType) {
60 JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType);
61 try {
62 List<T> list = MAPPER.readValue(jsonData, javaType);
63 return list;
64 } catch (Exception e) {
65 e.printStackTrace();
66 }
67
68 return null;
69 }
70
71 }
注:本文参考了:cnblogs:牛奶、不加糖
Json学习整理的更多相关文章
- [Network] HTML、XML和JSON学习汇总
写在前面:楼主也是刚刚接触这方面的知识,之前完全是零基础,后来经朋友推荐了几个不错的博文,看完以后豁然开朗.但是此博文更加偏重于基础知识介绍(其实更深的楼主也还不了解,这方面的大神请绕道),只是分享个 ...
- dataTables 插件学习整理
在项目中使用了dataTables 插件,学习整理一下. dataTables 的官方中文网站 http://www.datatables.club 引入文件: 所有的都要引入 jq文件 1. dat ...
- JavaScript学习整理(转载)
JavaScript的学习整理(一) 目录: 1.换皮肤功能2.显示/隐藏(点击切换)3.显示/隐藏(onmouseover/onmouseout)4.选项卡5.全选/不选/反选(checkbox)6 ...
- js数组学习整理
原文地址:js数组学习整理 常用的js数组操作方法及原理 1.声明数组的方式 var colors = new Array();//空的数组 var colors = new Array(3); // ...
- TweenMax学习整理--特有属性
TweenMax学习整理--特有属性 构造函数:TweenMax(target:Object, duration:Number, vars:Object) target:Object -- 需要缓 ...
- HttpClient学习整理
HttpClient简介HttpClient 功能介绍 1. 读取网页(HTTP/HTTPS)内容 2.使用POST方式提交数据(httpClient3) 3. 处理页面重定向 ...
- !!对python列表学习整理列表及数组详细介绍
1.Python的数组分三种类型:(详细见 http://blog.sina.com.cn/s/blog_6b783cbd0100q2ba.html) (1) list 普通的链表,初始化后可以通过特 ...
- Java设计模式(学习整理)---命令模式
设计模式之Command(学习整理) 1.Command定义 不少Command模式的代码都是针对图形界面的,它实际就是菜单命令,我们在一个下拉菜单选择一个命令时,然后会执行一些动作. 将这些命令封装 ...
- Wix学习整理(5)——安装时填写注册表
原文:Wix学习整理(5)--安装时填写注册表 一 Microsoft操作系统的注册表 什么是注册表? 注册表是Mircrosoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信 ...
随机推荐
- idea 注释中的错误不再提示
- POJ1742Coins(多重背包)
Coins Time Limit: 3000MS Memory Limit: 30000K Total Submissions: 32309 Accepted: 10986 Descripti ...
- go 包-锁机制
线程同步 import(“sync”) 互斥锁, var mu sync.Mutex 读写锁, var mu sync.RWMutex 资源竞争样例 func testMap() { var a ma ...
- python高级数据可视化Dash2
k 线国内版 python dash 的应用首页,是用一个 k 线图来做 damo 的,奈何数据源用的 Google,上不去.当然,可以换 yahoo,但是毕竟国内的还是更亲切些. 官方的 demo ...
- 版本控制工具Git工具快速入门-Windows篇
版本控制工具Git工具快速入门-Windows篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近在学习Golang语言,之前的开发环境在linux上开发的,后来由于办公用的是w ...
- 配置DHCP服务
配置DHCP服务 一.DHCP的简介 1.DHCP是Dynamic Host Configuration Protocol(动态主机配置协议)的缩写: 2.DHCP是从BOOTP(Bootstrap ...
- Python基础【day01】:python介绍发展史(一)
本节内容 Python介绍 发展史 Python 2 or 3? 一. Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏 ...
- Linux命令之grep
grep命令 用处:文本搜索工具 用法:grep + ‘查找关键字的名字’ + 文件名 示例: 还在profile里面查找then 干净利落强大,有关then的信息显示
- HTTP协议学习笔记---HTTP持久连接和如何正确地关闭HTTP连接
一,持久连接 什么是持久连接?对于HTTP协议而言,它是基于请求响应模型,Client向Server发请求时,先建立一条HTTP连接,Server给Client响应数据后,连接关闭. 当Client发 ...
- C# 与 SQL Server 的数据类型对应关系
(一)C#与SQL Server 2005(或以下版本): C# C#取值 SQL Server SQL Server取值 System.DateTime samlltime System.Objec ...