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>
相关推荐
除了基本的对象转JSON和JSON转对象,Gson还提供了一些高级特性: - **忽略未知字段**:在反序列化时,如果JSON包含对象没有的字段,可以配置Gson忽略这些字段。 - **自定义序列化和反序列化**:对于特殊的数据类型,...
Struts2、jQuery、JSON和List是Web开发中常见的技术栈,它们在构建动态、交互式的Web应用程序中扮演着重要角色。这篇博文可能是探讨如何在Struts2框架中结合jQuery和JSON来处理List类型的数据。 Struts2是一个流行...
- 在实际开发中,应考虑使用现代的库,如Jackson或Gson,它们提供了更高效且功能丰富的JSON处理,而`jaxb`或`StaX`等库可以处理XML转换。 - 对于复杂的转换,可以使用对象映射框架,如Dozer或ModelMapper,它们...
- 如果数据格式固定,可以使用`ObjectMapper`(如Jackson或Gson)将整个输入流一次性转换为JSON数组,然后再反序列化为Java对象列表。 以上就是如何从`Reader`转换为`List`和实体模型的基本方法,这些知识在处理...
在安卓开发中,Gson库通常与网络请求库(如Volley, Retrofit等)结合使用,将服务器返回的JSON数据直接转化为Model对象,便于业务逻辑处理。同时,由于Gson体积小,性能优良,它也是安卓开发中的首选JSON库之一。 ...
items = gson.fromJson(jsonString, new TypeToken<List<MyObject>>(){}.getType()); // ...其他业务逻辑... return SUCCESS; } } ``` 在这里,`MyObject`是你定义的一个Java类,其属性应与JSON对象的键相对应...
List<ImageModel> imageModels = gson.fromJson(jsonString, type); ``` 为了实现这个过程,你需要在Android项目中引入Gson库,并确保你的实体类(如`ImageModel`)在两端都有对应的定义,包括相同的名字和属性。 ...
Person person = gson.fromJson(jsonString, Person.class); ``` 最后,关于数据库配置报文,这涉及到如何正确地设置和使用数据库连接参数,以读写数据。在Java中,我们通常使用JDBC(Java Database Connectivity)...
在SpringMVC中,常见的Json处理库有Jackson、Gson和JSON-P等,其中Jackson是最常用的,因为它具有高效、灵活且易于使用的特性。这个压缩包很可能包含了Jackson的jar文件,比如`jackson-databind`、`jackson-core`和`...
1. **JSON 库的引入**:为了处理 JSON 数据,我们通常会引入如 Jackson 或者 Gson 这样的 JSON 库。Jackson 是目前 Spring 官方推荐的 JSON 解析库,因为它提供了高效的性能和丰富的功能。引入依赖后,Spring MVC ...
List<DataModel> dataList = ...; // 获取数据 Gson gson = new Gson(); String jsonData = gson.toJson(dataList); return "success"; } ``` 这里的`DataModel`是你的数据模型类,应包含与Echarts图表相关的...
在Android中,我们通常使用`Gson`或`org.json`库来解析Json数据。例如,一个Json文件可能包含一系列图片的URL数组,每个URL对应一张图片: ```json [ {"id": 1, "imageUrl": "http://example.com/image1.jpg"}, {...
4. 对于`List`,调用`list2json`方法。 5. 对于`Map`,调用`map2json`方法。 6. 对于`Set`,调用`set2json`方法。 7. 对于其他非数组、非集合类型的对象,尝试将其转换为JSON格式的JavaBean(通过`bean2json`方法)...
3. `xom1.1.jar`:XOM(eXtensible Object Model)是一个XML解析库,虽然主要针对XML,但有时在处理嵌套复杂的数据结构时,可能会间接使用到XML与JSON的互转。 4. `morph-1.1.1.jar` 和 `ezmorph-1.0.6.jar`:这两...
YourDataModel dataModel = gson.fromJson(jsonData, YourDataModel.class); ``` 或者使用`org.json`库解析JSON数组或对象: ```java JSONArray jsonArray = new JSONArray(jsonData); for (int i = 0; i (); i++) ...
例如,创建一个Action类,定义一个方法,该方法使用@Result注解指定返回类型为json,然后在方法内部将Java对象转换成Json字符串,如使用Fastjson或Gson库进行转换。 在前端,使用JQuery的Ajax方法发起请求到Struct2...
在Java中,我们可以使用org.json库或Google的Gson库来创建和序列化JSON对象。 接着,我们需要配置Struts2的配置文件(struts.xml)。在这里,我们需要定义一个Action配置,指定Action类、方法以及返回的结果类型。...
String jsonString = gson.toJson(yourObject); ``` - **设置响应头**:为了让浏览器知道返回的是JSON数据,需要在HTTP响应头中设置`Content-Type`为`application/json`。 ```java response.setContentType(...
result = new Gson().toJson(dataList); return SUCCESS; } } ``` 3. **使用AJAX**:在前端,使用JavaScript和jQuery库发送AJAX请求到服务器,获取JSON数据。例如: ```javascript $.ajax({ url: 'StrutsAjax/...
List<DataModel> dataList = new Gson().fromJson(jsonData, new TypeToken<List<DataModel>>(){}.getType()); ``` 七、错误处理和安全考虑 在实际应用中,我们还需要考虑网络异常、超时、数据验证等错误情况。使用...