java 对象 json 集合 数组 互转
1、先定义一个类对象
package com.basics; import com.alibaba.fastjson.JSONObject; import java.util.List;
import java.util.Map; /**
* @author admin
*/
public class students {
private Integer id;
private String uname;
private String hobby;
private String dream;
private List<Map<String,String>> info; public Integer getId() {
return id;
} public void setId(Integer id) {
this.id = id;
} public String getUname() {
return uname;
} public void setUname(String uname) {
this.uname = uname;
} public String getHobby() {
return hobby;
} public void setHobby(String hobby) {
this.hobby = hobby;
} public String getDream() {
return dream;
} public void setDream(String dream) {
this.dream = dream;
} public List<Map<String, String>> getInfo() {
return info;
} public void setInfo(List<Map<String, String>> info) {
this.info = info;
} @Override
public String toString(){
return "{\"id\":\""+ id+ "\",\"uname\":\""+uname+"\",\"hobby\":\""+hobby+"\",\"dream\":\""+dream+"\",\"info\":"+ JSONObject.toJSONString(info) +"}";
}
}
2、实例对象添加数据和转json
package com.basics; import net.sf.json.JSONObject; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; public class objectMap { public static void main(String[] args){
students std = new students();
std.setId(123456);
std.setUname("ouba");
std.setHobby("rap");
std.setDream("miss");
List<Map<String,String>> info = new ArrayList<Map<String,String>>();
Map<String,String> m = new HashMap<String,String>();
m.put("名字1","欧巴");m.put("name2","哥哥");
info.add(m); std.setInfo(info); System.out.println(std.toString());
//对象转json
// JSONObject json = JSONObject.parseObject(std.toString());
// //List<String> line = (List<String>) json.get("info");
// JSONArray line = (JSONArray) json.get("info");
// System.out.println(line.get(1));
JSONObject js = JSONObject.fromObject(std);
String st = js.toString();
System.out.println(st);
}
}
注意,使用JSONObject 需要导入json-lib包,下载地址:链接: https://pan.baidu.com/s/1_TJqAvrth8yO2p-a-N33JA 提取码: q182 复制这段内容后打开百度网盘手机App,操作更方便哦
java 对象 json 集合 数组 互转的更多相关文章
- 【转载】java对象和byte数组互转,直接拿去用
//加了了Optional防止空指针异常,加入了泛型,省去了强制转化 import java.io.*; import java.util.Optional; /** * Created by Jas ...
- Json——使用Json jar包实现Json字符串与Java对象或集合之间的互相转换
总结一下利用Json相关jar包实现Java对象和集合与Json字符串之间的互相转换: 1.创建的User类: package com.ghj.packageofdomain; public clas ...
- Java对象 json之间的转换(json-lib)
在这里主要简单的介绍一下,如何使用json-lib这个工具包来完成Java对象(或集合)与json对象(或集合)之间的转换~ 1. Java对象转换成json(既创建json) 关键类:JSONObj ...
- java中json和字符串互转及日期转换 练习
一:以下是用到的jar名称: commons-beanutils-1.6.jar commons-collections-3.2.1.jar commons-lang-2.6.jar commons- ...
- java对象转字节数组,获取泛型类
对象转字节数组,字节数组在恢复成对象 Test.java class Test { public static void main(String args[]) throws IOException, ...
- Java对象和集合的拷贝/克隆/复制
昨天同事遇到了一个奇怪的问题,他需要将一个JavaBean拷贝一份,然后对新创建的Bean进行操作.但是他对新的Bean操作后,会影响旧的Bean的值.当听到这个问题的时候,我第一反应就是他的拷贝方法 ...
- 关于js中的json对象,json串,数组之间相互转换
将json对象转换成string var loginUser = {username: username, password: password}//方式一 localStorage.setItem( ...
- java 对象、集合的非空判断
自我总结,有什么不到位的地方,请各位纠正补充,感激不尽! 目的:使程序更严谨 ***对象验证是否不为空: if( null != obj ) ***List验证不为空:if( null != lis ...
- java对象json序列化时忽略值为null的属性
环境: jdk: openjdk11 操作系统: windows 10教育版1903 目的: 如题,当一个对象里有些属性值为null 的不想参与json序列化时,可以添加如下注解 import com ...
随机推荐
- [易学易懂系列|rustlang语言|零基础|快速入门|(10)|Vectors容器]
[易学易懂系列|rustlang语言|零基础|快速入门|(10)] 有意思的基础知识 Vectors 我们之前知道array数组是定长,只可我保存相同类型的数据的数据类型. 如果,我们想用不定长的数组 ...
- ubuntu 配置smb后无法访问
配置如下 [/gscloud] path = /gscloud browseable = yes writable = yes guest ok = yes read only = no create ...
- SpringMVC的工作原理及MVC设计模式
SpringMVC的工作原理: 1.当用户在浏览器中点击一个链接或者提交一个表单时,那么就会产生一个请求(request).这个请求会携带用户请求的信息,离开浏览器. 2.这个请求会首先到达Sprin ...
- 一篇文章了解RPC框架原理
1.RPC框架的概念 RPC(Remote Procedure Call)–远程过程调用,通过网络通信调用不同的服务,共同支撑一个软件系统,微服务实现的基石技术.使用RPC可以解耦系统,方便维护,同时 ...
- sourceTree 添加 ssh key 方法
1.使用 git 客户的生成公私钥:id_rsa.id_rsa.pub 1.1设置Git的user name和email: $ git config --global user.name " ...
- Python 函数Ⅲ
默认参数 调用函数时,默认参数的值如果没有传入,则被认为是默认值.下例会打印默认的age,如果age没有被传入: 以上实例输出结果: 不定长参数 你可能需要一个函数能处理比当初声明时更多的参数.这些参 ...
- 分组统计 over(partition by
sum( CASE WHEN ISNULL(b.zl, 0) = 0 THEN C.LLZL ELSE b.zl END * c.pccd * b.sl) over(partition by b.dj ...
- linux-系统启动流程-7
1,BIOS开机自检,检查cpu硬件及开机启动顺序,查找第一个磁盘磁头的MBR信息并加载BOOtloader,然后将控制权交与bootloader 2, GRUB GRUB(Grand Unified ...
- TTTTTTTTTTTTTT POJ 3678 与或异或 2-SAT+强连通 模板题
Katu Puzzle Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9129 Accepted: 3391 Descripti ...
- Linux下cs简单通讯(socket)
Server: #include<iostream> #include<sys/types.h> #include<sys/socket.h> #include&l ...