实体类

package com.nf.redisDemo1.entity;

public class News {

    private long id;
private String title;
private String body; public News() {
} public News(String title, String body) {
this.title = title;
this.body = body;
} public long getId() {
return id;
} public void setId(long id) {
this.id = id;
} public String getTitle() {
return title;
} public void setTitle(String title) {
this.title = title;
} public String getBody() {
return body;
} public void setBody(String body) {
this.body = body;
} @Override
public String toString() {
return "News{" +
"id=" + id +
", title='" + title + '\'' +
", body='" + body + '\'' +
'}';
}
}

Gson

package com.nf.blog;

import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.nf.redisDemo1.entity.News; import java.util.ArrayList;
import java.util.List; public class Main { public static void main(String[] args) {
News news = new News("2019快来了?你准备怎么过年呢?", "身为一个热爱IT行业的程序员,当然是写程序搞事情了。");
Gson gson = new Gson(); //单个对象的序列化及反序列化 //序列化
String newsStr = gson.toJson(news);
System.out.println("JSON字符串:");
System.out.println(newsStr); //反序列化
News news_new = gson.fromJson(newsStr, News.class);
System.out.println("实体对象:");
System.out.println(news_new); //List集合的序列化和反序列化
List<News> newsList = new ArrayList<>();
newsList.add(news);
newsList.add(new News("你想做的是什么呢?","多写代码,知道闭眼写一个项目为止。")); //序列化
String newListStr = gson.toJson(newsList);
System.out.println("集合序列化后:");
System.out.println(newListStr); //反序列化
List<News> newsList_new = gson.fromJson(newListStr, new TypeToken<List<News>>() {}.getType());
System.out.println("JSON字符串反序列化:");
System.out.println(newsList_new); } }

jackson

 package com.nf.blog;

 import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.nf.redisDemo1.entity.News; import java.io.IOException;
import java.util.ArrayList;
import java.util.List; public class Main { public static void main(String[] args) throws IOException {
News news = new News("2019快来了?你准备怎么过年呢?", "身为一个热爱IT行业的程序员,当然是写程序搞事情了。");
ObjectMapper objectMapper = new ObjectMapper(); // jackson 单个对象的序列化及反序列化
//序列化
String newsStr = objectMapper.writeValueAsString(news);
System.out.println("JSON字符串:");
System.out.println(newsStr); //反序列化
News news_new = objectMapper.readValue(newsStr,News.class);
System.out.println("实体对象:");
System.out.println(news_new); //List集合的序列化和反序列化
List<News> newsList = new ArrayList<>();
newsList.add(news);
newsList.add(new News("你想做的是什么呢?","多写代码,知道闭眼写一个项目为止。")); //序列化
String newListStr = objectMapper.writeValueAsString(newsList);
System.out.println("集合序列化后:");
System.out.println(newListStr); //反序列化
List<News> newsList_new = objectMapper.readValue(newListStr, new TypeReference<List<News>>(){});
System.out.println("JSON字符串反序列化成List集合:");
System.out.println(newsList_new); News[] newsArr = objectMapper.readValue(newListStr,News[].class);
System.out.println("JSON字符串反序列化成数组:");
System.out.println(newsArr); } }

将 对象序列化与反序化 (json格式)的更多相关文章

  1. 简单的使用Gson (序列化 和 反序化)

    下载地址:http://mvnrepository.com/artifact/com.google.code.gson/gson/2.8.5 在项目导入jar包后 package com.web; i ...

  2. C#反序化json字符串,不用区分大小写

    最近在做第三方对接的项目,接口返回的数据是json格式,并且每个字段都是小写的,而我们程序类中的属性是要求大写的:刚开始想到的是用JavaScriptSerializer,但是这个并不满足需求 就换了 ...

  3. var dataObj=eval("("+data+")");//转换为json对象(解决在ajax返回json格式数据的时候明明正确的获取了返回值但是却就是进不去success方法的问题。格式错误)

    一,原理 1.1,解析1 将字符串解析为JavaScript代码,比如:var a = "alert('a');";这里的a就只是一个字符串而已,输出的话也是alert(a);这句 ...

  4. springMVC form表单提交多个对象集合--使用ajax提交--前台json格式数据封装方法

    (function ($) { $.fn.serializeJson = function () { var jsonData1 = {}; var serializeArray = this.ser ...

  5. data对象转化成后端需要的json格式

    data=JSON.stringify(json_data); $.ajax({type:'post',url:url+'warehouse/create_alliance_out/',data:da ...

  6. .net中对象序列化技术浅谈

    .net中对象序列化技术浅谈 2009-03-11 阅读2756评论2 序列化是将对象状态转换为可保持或传输的格式的过程.与序列化相对的是反序列化,它将流转换为对象.这两个过程结合起来,可以轻松地存储 ...

  7. JavaScript中,JSON格式的字符串与JSON格式的对象相互转化

    前言:JSON是一个独立于任何语言的数据格式,因此,严格来说,没有“JSON对象”和“JSON字符串”这个说法(然而”菜鸟教程“和”W3school“使用了“JSON对象”和“JSON字符串”这个说法 ...

  8. IO编程之对象序列化

    对象序列化的目标是将对象保存在磁盘中或者允许在网络中直接传输对象.对象序列化机制循序把内存中的java对象转换成平台无关的二进制流,从而允许把这种二进制流持久的保存在磁盘上,通过网络将这种二进制流传输 ...

  9. 把普通对象转换成json格式的对象

    1.什么叫做JSON?JSON只是一种数据格式(它不是一种新的数据类型) var obj = {name: "中国", age: 5000};//->普通格式的对象 var ...

随机推荐

  1. eclipse控制台界面乱码问题

    一.首先,eclipse的控制台必须用GBK编码,必须满足以下两个条件: 1.Windows---->Preferences---->Workspace---->Text file ...

  2. 实例一 airflow_failover

    源码: https://github.com/teamclairvoyant/airflow-scheduler-failover-controller #怎么判断scheduler是running的 ...

  3. [转帖] 龙芯 中标麒麟的 源 以及K8S

    龙芯Mips64el平台上部署K8s https://ysicing.me/posts/mips64el-loongson-k8s/ YSICING May 29 2019   kubernetes ...

  4. django进阶版4

    目录 1 Auth模块是什么 2 auth模块常用方法 authenticate() login(HttpRequest, user) logout(request) is_authenticated ...

  5. Elasticsearch多集群数据同步

    有时多个Elasticsearch集群避免不了要同步数据,网上查找了下数据同步工具还挺多,比较常用的有:elasticserach-dump.elasticsearch-exporter.logsta ...

  6. IDEA 中git的分支管理和使用说明

    1. 为什么要建立分支 git默认的主分支名字为master,一般团队开发时,都不会在master主分支上修改代码,而是建立新分支,测试完毕后,在将分支的代码合并到master主分支上. 2.操作如下 ...

  7. asp.net 8 Request,Response,Server

    Request成员: 1.Request.UrlReferrer 获取请求的来源,可以防盗链 Response.Write(Request.Url.ToString());//获取当前请求的URL地址 ...

  8. C#面向对象14 List泛型集合/装箱和拆箱/字典集合(Dictionary)

    1.List泛型集合 using System; using System.Collections.Generic; using System.Linq; using System.Text; usi ...

  9. nofollow标签浪费了多少站长做外链的时间

    对于rel=“external nofollow”和rel=“nofollow”,这两句代码,使用起来效果基本是一致的,只是前者较后者更为规范一点,两者翻译过来的意思就是:rel=“external ...

  10. Boost Graph Library materials

    Needed to compute max flow in a project and found the official document of BGL to be rather obscure, ...