`

JSON的转换

 
阅读更多

1.json转对象

 

String str="{\"Name\":\"leilei\",\"age\":23}";

		
					ObjectMapper objectMapper=new ObjectMapper();
					Student st=objectMapper.readValue(str, Student.class);
					System.out.println(st.getAge());

 

 

 

 

 

public class Student {
	public String name;
	public String age;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getAge() {
		return age;
	}
	public void setAge(String age) {
		this.age = age;
	}
	

}

 

JSONObject a = new JSONObject(jsonstr);  
        JSONArray array = a.getJSONArray("StoreList");

 2.对象转JSON字符串

String s = objectMapper.writeValueAsString(obj);

 

 写的公用方法

import org.codehaus.jackson.map.ObjectMapper;
import org.json.JSONArray;
import org.json.JSONObject;


** 
	 * @Title: getBeanFromJSON 
	 * @Description: TODO(这里用一句话描述这个方法的作用) 
	 * @param @param sb    设定文件 
	 * @return void    返回类型 
	 * @throws 
	 */
	public static <T> T getBeanFromJSON(String json,Class<T> clazz,String key) {
		try {
			ObjectMapper objectMapper = new ObjectMapper();
			Object object =getObjectFromJSON(json, key);
			T t=objectMapper.readValue(object.toString(), clazz);
			return t;
		} catch (Exception e) {
			logger.error("从JSON中读取Bean报错:"+e.getMessage());
			e.printStackTrace();
		}
		return null;
	}
	
	/** 
	 * @Title: getObjectFromJSON 
	 * @Description: TODO(这里用一句话描述这个方法的作用) 
	 * @param @param sb    设定文件 
	 * @return void    返回类型 
	 * @throws 
	 */
	public static Object getObjectFromJSON(String json,String key) {
		try {
			JSONObject a = new JSONObject(json);  
			Object object = a.get(key);
			return object;
		} catch (Exception e) {
			logger.error("从JSON中读取取对象报错:"+e.getMessage());
			e.printStackTrace();
		}
		return null;
	}
	
	/** 
	 * @Title: getBeanFromJSON 
	 * @Description: TODO(这里用一句话描述这个方法的作用) 
	 * @param @param sb    设定文件 
	 * @return void    返回类型 
	 * @throws 
	 */
	public static <T> List<T> getBeansFromJSON(String json,Class<T> clazz,String key) {
		try {
			ObjectMapper objectMapper = new ObjectMapper();
			JSONObject a = new JSONObject(json);
			JSONArray array = a.getJSONArray(key);
			List<T> list = new ArrayList<T>();
	        for (int i = 0; i < array.length(); i++) {
				objectMapper=new ObjectMapper();
				T t = objectMapper.readValue(array.get(i).toString(), clazz);
				if(t !=null){
					list.add(t);
				}
			}
			return list;
		} catch (Exception e) {
			logger.error("从JSON中读取BeanList报错:"+e.getMessage());
			e.printStackTrace();
		}
		return null;
	}

 

 

 

import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;

 

 

	public static <T> List<T> getBeansFromJson(String json, Class<T> clazz) throws JsonParseException, JsonMappingException, IOException {
		ObjectMapper mapper = new ObjectMapper();
		JavaType javaType = mapper.getTypeFactory().constructParametricType(List.class, clazz);
		List<T> lst = (List<T>) mapper.readValue(json, javaType);
		return lst;
	}

	public static <T> T getBeanFromJson(String json, Class<T> clazz) throws JsonParseException, JsonMappingException, IOException {
		ObjectMapper mapper = new ObjectMapper();
		T t = mapper.readValue(json, clazz);
		return t;
	}

	public static String getJosnByKey(String json, String key) throws JsonProcessingException, IOException {
		ObjectMapper mapper = new ObjectMapper();
		JsonNode root = mapper.readTree(json);
		JsonNode fields = root.get(key);
		return fields.toString();
	}

 

 

import java.util.HashMap;
import java.util.Map;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.type.TypeReference;
 
public class JsonMapExample {
    public static void main(String[] args) {
 
	String json = "{\"name\":\"mkyong\", \"age\":\"29\"}";
 
	Map<String,String> map = new HashMap<String,String>();
	ObjectMapper mapper = new ObjectMapper();
 
	try {
 
		//convert JSON string to Map
		map = mapper.readValue(json, 
		    new TypeReference<HashMap<String,String>>(){});
 
		System.out.println(map);
 
	} catch (Exception e) {
		e.printStackTrace();
	}
 
    }
}


import org.codehaus.jackson.map.ObjectMapper;
 
public class MapJsonExample {
    public static void main(String[] args) {
 
	try {
 
		ObjectMapper mapper = new ObjectMapper();
		String json = "";
 
		Map<String, String> map = new HashMap<String, String>();
		map.put("name", "mkyong");
		map.put("age", "29");
 
		//convert map to JSON string
		json = mapper.writeValueAsString(map);
 
		System.out.println(json);
 
	} catch (Exception e) {
		e.printStackTrace();
	}
 
    }
}



import org.codehaus.jackson.map.ObjectMapper;
 
public class JsonMapFileExample {
    public static void main(String[] args) {
 
	ObjectMapper mapper = new ObjectMapper();
 
	Map<String, Object> map = new HashMap<String, Object>();
	map.put("name", "mkyong");
	map.put("age", 29);
 
	List<Object> list = new ArrayList<Object>();
	list.add("msg 1");
	list.add("msg 2");
	list.add("msg 3");
 
	map.put("messages", list);
 
	try {
 
		// write JSON to a file
		mapper.writeValue(new File("c:\\user.json"), map);
 
	} catch (Exception e) {
		e.printStackTrace();
	}
    }
}

{
	"age":29,
	"name":"mkyong",
	"messages":["msg 1","msg 2","msg 3"]
}

import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.type.TypeReference;
 
public class JsonFileMapExample {
    public static void main(String[] args) {
 
	try {
 
		ObjectMapper mapper = new ObjectMapper();
 
		// read JSON from a file
		Map<String, Object> map = mapper.readValue(
			new File("c:\\user.json"),
			new TypeReference<Map<String, Object>>() {
		});
 
		System.out.println(map.get("name"));
		System.out.println(map.get("age"));
 
		@SuppressWarnings("unchecked")
		ArrayList<String> list = (ArrayList<String>) map.get("messages");
 
		for (String msg : list) {
			System.out.println(msg);
		}
 
	} catch (Exception e) {
		e.printStackTrace();
	}
 
    }
}

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    json转换为SQL server建表脚本

    标题"json转换为SQL server建表脚本"涉及到的主要知识点包括: 1. JSON解析:首先,你需要理解如何在C#中解析JSON数据。C#提供了 Newtonsoft.Json 库(也称为 Json.NET),这是一个强大的JSON库,可以方便地将JSON...

    xml & json 转换工具

    在XML到JSON转换过程中,XStream可能首先用于将XML数据转换为Java对象,然后这些对象再由Json-lib处理成JSON格式。 XML到JSON的转换通常包括以下步骤: - 解析XML文档,将其转换为DOM(Document Object Model)树。...

    json转换jar包

    标题"json转换jar包"暗示了我们需要一个包含这些JSON处理库的JAR文件,以便在Java项目中进行JSON操作。这些库通常以JAR格式提供,便于集成到Java项目的类路径中。 描述提到"string与json转换需要的jar包",这表明...

    json转换jsonschema

    在JavaScript开发中,有时我们需要将JSON对象转换为JSON Schema,以便对数据进行验证。这在处理用户输入、API交互或者存储复杂数据结构时非常有用。`jsonToSchema`项目可能就是一个工具或库,用于帮助开发者实现这个...

    python:json转换

    而`trans-json2.py`则可能涉及到两种不同风格的JSON转换。其中一种可能是"pretty-print"风格,即格式化后的JSON,易于人类阅读,通过设置`indent`参数实现: ```python import json # JSON字符串 json_str = '{...

    JSON转换为JAVA对象及日期格式转换处理 -

    JSON转换为JAVA对象及日期格式转换处理 -

    Java中后台JSON转换包

    Java中的JSON转换是Web开发中常见的一种数据交互方式,它使得服务器端的数据能以轻量级的文本格式发送到客户端,比如JavaScript,从而方便前端进行处理。本篇将详细讲解如何在Java后台上使用JSON进行数据转换,并...

    json 转换为map

    在Java中,将JSON转换为Map是常见的操作,因为Map可以方便地与Java对象进行映射,便于进一步处理。`google-gson`库是Google提供的一个Java库,用于将Java对象转换为JSON格式,反之亦然。 在Java中,`java.util.Map`...

    gson 2.3.1 json转换利器

    本篇文章将深入探讨Gson 2.3.1的核心功能、使用方法以及它在JSON转换中的优势。 一、Gson简介 Gson库的主要目的是解决Java对象与JSON字符串之间的相互转换问题。JSON(JavaScript Object Notation)是一种轻量级的...

    andriod之json转换工具jar包

    这里提到的"andriod之json转换工具jar包"是一个专门为Android平台设计的JSON处理库,帮助开发者快速地将Java对象转换为JSON格式,反之亦然。 该jar包包含了两个关键组件: 1. `jackson-mapper-asl-1.9.11.jar`:这...

    java XML 和json 转换工具类

    java XML 和json 转换工具类 java XML 和json 转换工具类java XML 和json 转换工具类 java XML 和json 转换工具类java XML 和json 转换工具类 java XML 和json 转换工具类java XML 和json 转换工具类 java XML 和...

    json转换插件

    在Java开发中,处理JSON数据时,我们经常需要将JSON字符串与Java对象之间进行相互转换,这正是"json转换插件"所扮演的角色。 这个插件的核心功能是提供了一个桥梁,连接JavaScript提交的JSON字符串和Java世界中的...

    json转换工具

    JSON转换工具主要用于将JSON格式的数据转换为其他格式,或者将其他格式的数据转换成JSON,以适应不同的数据交互需求。 在你提供的压缩包文件中,包含了一些Java库,这些库是用于处理JSON转换和其他相关操作的。下面...

    JSON 转换工具

    本文将详细介绍如何使用JSON转换工具,包括将JSON字符串转换为Objective-C的JsonModel和Swift的HandyJSON,以及JsonModel到HandyJSON的转换。 首先,让我们了解一下JsonModel。JsonModel是Objective-C的一个库,它...

    C#平台JSON转换工具

    本篇将详细介绍"C#平台JSON转换工具"的相关知识点。 1. JSON与C#的结合: C#提供了System.Json命名空间(在.NET Framework 3.5 SP1及更高版本中引入)来处理JSON,但这个API在.NET Framework 4.0中已被弃用。...

    Json转换程序

    本篇文章将聚焦于“Json转换程序”,详细介绍JSON序列化与反序列化的过程,以及如何在实际项目中处理JSON格式数据。 **JSON序列化**是指将编程语言中的对象转换成JSON字符串,以便在网络中传输或存储。例如,在Java...

    格式转换工具json2bin

    JSON转换工具通常包含以下功能: 1. **解析JSON**: 工具首先需要解析JSON文本,将其转化为内存中的数据结构。这涉及到验证JSON语法的正确性,如正确的大括号匹配、引号使用等。 2. **编组数据**: 将解析后的JSON...

    json转换工具类

    json转换工具类,可以转换很多格式。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

Global site tag (gtag.js) - Google Analytics