Java开发:如何将model对象与json互相转换?

model(javabean)与json相互转换

文章声明:model对象与json之间互转网上有很多方法,此处只记录一种常用的,并且比较安全便捷的转换方法:使用gson。

一、model转换json

1、 首先创建一个model实体类;

package cn.com.sdm.model;

import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;

public class Model {

	
	public Model(String field, String uri, String type, String fixed) {
		super();
		this.field = field;
		this.uri = uri;
		this.type = type;
		this.fixed = fixed;
	}

	@Expose
    @SerializedName("Field")
	private String field;
	

	@Expose
    @SerializedName("URI")
	private String uri;

	@Expose
    @SerializedName("Type")
	private String type;

	@Expose
    @SerializedName("Fixed")
	private String fixed;

	public String getField() {
		return field;
	}

	public void setField(String field) {
		this.field = field;
	}

	public String getUri() {
		return uri;
	}

	public void setUri(String uri) {
		this.uri = uri;
	}
	
	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public String getFixed() {
		return fixed;
	}

	public void setFixed(String fixed) {
		this.fixed = fixed;
	}
	
	@Override
	public String toString() {
		return "BodyModel [field=" + field + ", URI=" + uri + ", Type=" + type + "]";
	}

}

2、写测试类

package cn.com.sdm.test;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

public class Test {
	public static void main(String[] args) {
		//创建model对象,并赋值
		Model model = new Model("家", "北京市昌平区", "工作单位", "你猜");
		//创建gson对象
		Gson gson = new GsonBuilder().setPrettyPrinting().create();
		//直接将model转换为json
		String jsonForModel = gson.toJson(model);
		System.out.println(jsonForModel);
	}
}

//下面是测试结果
{
  "Field": "家",
  "URI": "北京市昌平区",
  "Type": "工作单位",
  "Fixed": "你猜"
}
二、json转model

1、直接上测试类

package cn.com.sdm.test;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

public class Test {
	public static void main(String[] args) {
		//创建model对象,并赋值
		Model model = new Model("家", "北京市昌平区", "工作单位", "你猜");
		//创建gson对象
		Gson gson = new GsonBuilder().setPrettyPrinting().create();
		//json转换model对象
		Model modelfromJson = gson.fromJson(jsonForModel, Model.class);
		System.out.println(modelfromJson);
	}
}

//下面是测试结果
BodyModel [field=家, URI=北京市昌平区, Type=工作单位]

如果需要将,model转换成json格式后,输出为文件流,那么可以进行以下操作:

//将json对象放入流中输出;
ByteArrayInputStream bas = new ByteArrayInputStream(gson.toJson(model).getBytes());

****值得一提的是,此gson有许多注解的方法可以使用,有兴趣的朋友可以多测试玩玩。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值