一、第一种(Jackson)

  需要用到的jar包:

  https://pan.baidu.com/s/1wrkUwEoKpmqgmYPQSN-iZg

package util;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.nf147.ldl.shop.entity.User; import java.text.SimpleDateFormat; public class JsonUtils {
/**
* 序列化成json
* */
public static String toJson(Object obj) {
// 对象映射器
ObjectMapper mapper = new ObjectMapper();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd HH:mm:ss");
mapper.setDateFormat(sdf); String result = null;
// 序列化user对象为json字符串
try {
result = mapper.writeValueAsString(obj);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
return result;
} /**
* 反序列化成对象
* */
public static <T> T toObject(String json,Class<T> valueType) {
//对象映射器
ObjectMapper mapper=new ObjectMapper();
T result=null;
try {
result=mapper.readValue(json,valueType); }catch (Exception e) {
e.printStackTrace();
}
return result;
} public static void main(String[] args) {
// int u_id, String user_id, String user_pwd, String user_phone, String user_email
//创建一个 user 对象
User user = new User(1, "new_user", "123456", "13728729012", "32688099@qq.com");
// 对象转JSON字符串
String user_json = JsonUtils.toJson(user);
System.out.println("对象转JSON字符串"+user_json); // JSON字符串转对象
User user1 = JsonUtils.toObject(user_json,User.class);
System.out.println("JSON字符串转对象:"+user1.getUser_id()+" "+user1.getUser_pwd());
} }

运行结果:

第二种方式(Gson):

  需要的jar包:

  https://pan.baidu.com/s/1Z7Ah8t45zBKSC6IjuvbzyA

    public static void main(String[] args) {
// int u_id, String user_id, String user_pwd, String user_phone, String user_email
//创建一个 user 对象
User user = new User(1, "new_user", "123456", "13728729012", "32688099@qq.com");
//对象转JSON
String user_str = new Gson().toJson(user);
System.out.println("对象转JSON:"+user_str); }

运行结果:

Json格式化的实现(Jackson、Gson)的更多相关文章

  1. json工具包比较 fastjson jackson gson

    对json进行json-object进行相互转化时,笔者接触到三种工具jar,现对其进行比较. fastjson:速度最快,阿里巴巴开源. jackson:springMvc 默认使用. gson:谷 ...

  2. [转] 各种Json解析工具比较 - json-lib/Jackson/Gson/FastJson

    JSON技术的调研报告 一 .各个JSON技术的简介和优劣1.json-libjson-lib最开始的也是应用最广泛的json解析工具,json-lib 不好的地方确实是依赖于很多第三方包,包括com ...

  3. Jackson Gson Json.simple 比较

    为公司做了小任务,需要用到Java Json库,Json库我几个月之前就用过,不过那时候是跟着项目来的,延续了项目的使用习惯直接用了jackson Json,而这次我觉得好好比较一下几个常见的Json ...

  4. json格式化

    jar包:gson-xxx.jar   import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.goog ...

  5. yformater - chrome谷歌浏览器json格式化json高亮json解析插件

    yformater是一款chrome浏览器插件,用来格式化(高亮)服务端接口返回的json数据. 实际上小菜并不是第一个写这种插件的,但是现有的chrome json格式化插件实在是不太好用,索性小菜 ...

  6. JSON格式化与serialize序列化

    一.JSON格式化 1. JSON是什么 JSON是一种数据的存储格式,用来沟通客户端Javascript和服务端PHP的交互.我们把用PHP生成JSON后的字符串传给前台Javascript,Jav ...

  7. android json解析详细介绍之gson

    废话不多说,什么json是轻量级数据交换标准:自己百度去深入了解:这里有三种json解析工具.本人只用过其中两种:    1.Google Json利器之Gson   评价:简单,方便. 2.阿里巴巴 ...

  8. JSON格式化 JSON美化 输出到html

    {"promotion_details":{"promotion_detail":[{"discount_fee":"22.20& ...

  9. asp.net中json格式化及在js中解析json

    类: public class UploadDocumentItem { public UploadDocumentItem() { } public string DocMuid { get; se ...

  10. org.json.JSONObject与com.google.gson.Gson

    org.json库为JSON创始人编写的解析JSON的java库,Gson为Google为我们提供的解析JSON格式数据的库. Gson里最重要的对象有2个Gson 和GsonBuilder. Gso ...

随机推荐

  1. MyBatis从入门到精通(第4章):MyBatis动态SQL【foreach、bind、OGNL用法】

    (第4章):MyBatis动态SQL[foreach.bind.OGNL用法] 4.4 foreach 用法 SQL 语句中有时会使用 IN 关键字,例如 id in (1,2,3).可以使用 ${i ...

  2. LeetCode No.160,161,162

    No.160 GetIntersectionNode 相交链表 题目 编写一个程序,找到两个单链表相交的起始节点. 如下面的两个链表: 在节点 c1 开始相交. 示例 输入:intersectVal ...

  3. MySQL--MySQL分区

    参考:http://bbs.51cto.com/thread-1080714-1.html MySQL 从5.1 版本开始支持分区的功能.分区是指根据一定的规则,数据库把一个表分解成多个更小的.更容易 ...

  4. Unicode的认识

    Unicode(统一码.万国码.单一码),它是为解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制码,以满足跨语言跨平台进行文本转换.处理的要求.1990年开始研 ...

  5. JKFZ%你赛炸裂祭

    Md爆40了身败名裂 上来就刚T1是什么习惯?居然不看T2导致明明能刚出正解却止步40 , T3找到原题看懂题解后却不敢交+难码 , 最近怕不是做毒瘤%你赛多了总以为T1能刚到点分 md最近怕不是炸了 ...

  6. cf1172E Nauuo and ODT(LCT)

    首先可以转化问题,变为对每种颜色分别考虑不含该颜色的简单路径条数.然后把不是当前颜色的点视为白色,是当前颜色的点视为黑色,显然路径数量是每个白色连通块大小的平方和,然后题目变为:黑白两色的树,单点翻转 ...

  7. 关于laravel的一些操作

    1.创建控制器 eg: php artisan make:controller  controllerName 如果是带命名空间需要创建控制器 则不需要加前面的  App/Http/Controlle ...

  8. Python笔记_第一篇_面向过程_第一部分_9.Ubuntu基础操作

    第一部分   Ubuntu简介 Ubuntu(乌班图)是一个机遇Debian的以桌面应用为主的Linux操作系统,据说其名称来自非洲南部祖鲁语或科萨语的“Ubuntu”一词,意思是“人性”.“我的存在 ...

  9. typescript--介绍ts

    TypeScript 介绍 TypeScript 是什么 TypeScript 是 JavaScript 的强类型版本.然后在编译期去掉类型和特有语法,生成纯粹的 JavaScript 代码.由于最终 ...

  10. 01 语言基础+高级:1-7 异常与多线程_day07 【线程池、Lambda表达式】

    day07[线程池.Lambda表达式] 主要内容 等待与唤醒案例 线程池 Lambda表达式 教学目标 -[ ] 能够理解线程通信概念-[ ] 能够理解等待唤醒机制-[ ] 能够描述Java中线程池 ...