`

Gson json,list,model互转

阅读更多
public class Person {

	private String name;
	private 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;
	}
	@Override
	public String toString() {
		return name + ":" + age;
	}
}

 

import java.util.ArrayList;
import java.util.List;

import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;

public class TestMain {
	
	private static String listToJson(){
		Gson gson = new Gson();
		List<Person> persons = new ArrayList<Person>();
		for (int i = 0; i < 10; i++) {
			Person p = new Person();
			p.setName("name" + i);
			p.setAge("intvalue");
			persons.add(p);
		}
		String str = gson.toJson(persons);
		return str;
	}
	
	private static Person jsonToModelisDeit(){
		String json = "{\"name\":\"name0\",\"age\":\"0\"}";
		Gson gson = new Gson();
		Person person = gson.fromJson(json, Person.class);
		return person;
	}
	
	private static List<Person> jsonToList(){
		Gson gson = new Gson();
		String json = "[{\"name\":\"name1\",\"age\":\"intvalue\"},{\"name\":\"name2\",\"age\":\"intvalue\"},{\"name\":\"name3\",\"age\":\"intvalue\"}]";
		List<Person> ps = gson.fromJson(json, new TypeToken<List<Person>>(){}.getType());
		for(int i = 0; i < ps.size() ; i++)
		{
		     Person p = ps.get(i);
		     System.out.println(p.toString());
		}
		return ps;
		
	}

	public static void main(String[] args) {
//		String json = TestMain.listToJson();
//		System.out.println(json);
//		
//		Person model = TestMain.jsonToModelisDeit();
//		System.out.println(model.getName());
//		System.out.println(model.getAge());
		
		List<Person> plist = TestMain.jsonToList();

	}

}

 

<!-- google Gson -->
<dependency>
        <groupId>com.google.code.gson</groupId>
	<artifactId>gson</artifactId>
	<version>2.6.2</version>
</dependency>

 

1
3
分享到:
评论

相关推荐

    自己实现的Android中将任意实体类(Entity、vo、dto、Model)对象(object)转为Json字符串的一个类

    除了基本的对象转JSON和JSON转对象,Gson还提供了一些高级特性: - **忽略未知字段**:在反序列化时,如果JSON包含对象没有的字段,可以配置Gson忽略这些字段。 - **自定义序列化和反序列化**:对于特殊的数据类型,...

    struts2+jquery+json+List

    Struts2、jQuery、JSON和List是Web开发中常见的技术栈,它们在构建动态、交互式的Web应用程序中扮演着重要角色。这篇博文可能是探讨如何在Struts2框架中结合jQuery和JSON来处理List类型的数据。 Struts2是一个流行...

    java转换xml、list、map和json.pdf

    - 在实际开发中,应考虑使用现代的库,如Jackson或Gson,它们提供了更高效且功能丰富的JSON处理,而`jaxb`或`StaX`等库可以处理XML转换。 - 对于复杂的转换,可以使用对象映射框架,如Dozer或ModelMapper,它们...

    如何将Reader转换成集合List和实体Model

    - 如果数据格式固定,可以使用`ObjectMapper`(如Jackson或Gson)将整个输入流一次性转换为JSON数组,然后再反序列化为Java对象列表。 以上就是如何从`Reader`转换为`List`和实体模型的基本方法,这些知识在处理...

    google-gson-2.2.4-release(压缩包含原版压缩包和官网下载地址)

    在安卓开发中,Gson库通常与网络请求库(如Volley, Retrofit等)结合使用,将服务器返回的JSON数据直接转化为Model对象,便于业务逻辑处理。同时,由于Gson体积小,性能优良,它也是安卓开发中的首选JSON库之一。 ...

    AJAX和struts2传递JSON数组

    items = gson.fromJson(jsonString, new TypeToken&lt;List&lt;MyObject&gt;&gt;(){}.getType()); // ...其他业务逻辑... return SUCCESS; } } ``` 在这里,`MyObject`是你定义的一个Java类,其属性应与JSON对象的键相对应...

    Android调用webservice进行实体对象的传递Json

    List&lt;ImageModel&gt; imageModels = gson.fromJson(jsonString, type); ``` 为了实现这个过程,你需要在Android项目中引入Gson库,并确保你的实体类(如`ImageModel`)在两端都有对应的定义,包括相同的名字和属性。 ...

    java实现多层嵌套循环参数转换

    Person person = gson.fromJson(jsonString, Person.class); ``` 最后,关于数据库配置报文,这涉及到如何正确地设置和使用数据库连接参数,以读写数据。在Java中,我们通常使用JDBC(Java Database Connectivity)...

    MVC与Json相关的jar包

    在SpringMVC中,常见的Json处理库有Jackson、Gson和JSON-P等,其中Jackson是最常用的,因为它具有高效、灵活且易于使用的特性。这个压缩包很可能包含了Jackson的jar文件,比如`jackson-databind`、`jackson-core`和`...

    spring mvc(整合了json)

    1. **JSON 库的引入**:为了处理 JSON 数据,我们通常会引入如 Jackson 或者 Gson 这样的 JSON 库。Jackson 是目前 Spring 官方推荐的 JSON 解析库,因为它提供了高效的性能和丰富的功能。引入依赖后,Spring MVC ...

    Android从Json文件异步加载图片

    在Android中,我们通常使用`Gson`或`org.json`库来解析Json数据。例如,一个Json文件可能包含一系列图片的URL数组,每个URL对应一张图片: ```json [ {"id": 1, "imageUrl": "http://example.com/image1.jpg"}, {...

    各种对象转成JSON字符串.docx

    4. 对于`List`,调用`list2json`方法。 5. 对于`Map`,调用`map2json`方法。 6. 对于`Set`,调用`set2json`方法。 7. 对于其他非数组、非集合类型的对象,尝试将其转换为JSON格式的JavaBean(通过`bean2json`方法)...

    java json使用的jar包

    3. `xom1.1.jar`:XOM(eXtensible Object Model)是一个XML解析库,虽然主要针对XML,但有时在处理嵌套复杂的数据结构时,可能会间接使用到XML与JSON的互转。 4. `morph-1.1.1.jar` 和 `ezmorph-1.0.6.jar`:这两...

    android获取json中数据并绑定到listview(巨耗流量)(新手)

    YourDataModel dataModel = gson.fromJson(jsonData, YourDataModel.class); ``` 或者使用`org.json`库解析JSON数组或对象: ```java JSONArray jsonArray = new JSONArray(jsonData); for (int i = 0; i (); i++) ...

    Struct2利用Ajax,JQuery交互Json

    例如,创建一个Action类,定义一个方法,该方法使用@Result注解指定返回类型为json,然后在方法内部将Java对象转换成Json字符串,如使用Fastjson或Gson库进行转换。 在前端,使用JQuery的Ajax方法发起请求到Struct2...

    struts2+Json 点击按钮加载用户列表

    在Java中,我们可以使用org.json库或Google的Gson库来创建和序列化JSON对象。 接着,我们需要配置Struts2的配置文件(struts.xml)。在这里,我们需要定义一个Action配置,指定Action类、方法以及返回的结果类型。...

    ajax struts 无刷新访问后台返回json数据

    String jsonString = gson.toJson(yourObject); ``` - **设置响应头**:为了让浏览器知道返回的是JSON数据,需要在HTTP响应头中设置`Content-Type`为`application/json`。 ```java response.setContentType(...

    struts2框架json传递后台数据到echarts

    List&lt;DataModel&gt; dataList = ...; // 获取数据 Gson gson = new Gson(); String jsonData = gson.toJson(dataList); return "success"; } ``` 这里的`DataModel`是你的数据模型类,应包含与Echarts图表相关的...

    struts2+json+ajax整合例子(导入即可运行,附带详细教程)

    result = new Gson().toJson(dataList); return SUCCESS; } } ``` 3. **使用AJAX**:在前端,使用JavaScript和jQuery库发送AJAX请求到服务器,获取JSON数据。例如: ```javascript $.ajax({ url: 'StrutsAjax/...

    Android向Java后台发送请求并返回Json数据

    List&lt;DataModel&gt; dataList = new Gson().fromJson(jsonData, new TypeToken&lt;List&lt;DataModel&gt;&gt;(){}.getType()); ``` 七、错误处理和安全考虑 在实际应用中,我们还需要考虑网络异常、超时、数据验证等错误情况。使用...

Global site tag (gtag.js) - Google Analytics