`
Jtianlin
  • 浏览: 2838 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jackson简单用法总结

阅读更多

个人总结的jackson简单用法,希望对大家有多帮助!xml解析失败,若有朋友看到万望指点一二!

引入相关jar包,如:jackson-all-1.7.6.jar

一个简单的bean类:

package com.Jtianlin.test;

public class User {

 private String username;
 private Integer age;
 public String getUsername() {
  return username;
 }
 public void setUsername(String username) {
  this.username = username;
 }
 public Integer getAge() {
  return age;
 }
 public void setAge(Integer age) {
  this.age = age;
 }
 
}

 

java对象到json字符串:

package com.Jtianlin.test;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.codehaus.jackson.map.ObjectMapper;

public class BeanToJson {

 public static void main(String[] args) throws Exception {
  
  //将对象转换成json字符串
  User user = new User();
  user.setAge(10);
  user.setUsername("jzx");
  ObjectMapper objectMapper = new ObjectMapper();
  String userJson = objectMapper.writeValueAsString(user);
  System.out.println(userJson);
  //打印:{"username":"jzx","age":10}
  
  //将list集合对象转换成json字符串
  User user1 = new User();
  user1.setAge(11);
  user1.setUsername("sss");
  User user2 = new User();
  user2.setAge(12);
  user2.setUsername("hsj");
  List<User> userList = new ArrayList<User>();
  userList.add(user1);
  userList.add(user2);
  String userListJson = objectMapper.writeValueAsString(userList);
  System.out.println(userListJson);
  //打印结果:[{"username":"sss","age":11},{"username":"hsj","age":12}]
  
  //将map集合转换成json字符串。
  Map<String,User> userMap = new HashMap<String,User>();
  userMap.put("user1", user1);
  userMap.put("user2", user2);
  String userMapJson  = objectMapper.writeValueAsString(userMap);
  System.out.println(userMapJson);
  //打印结果:{"user2":{"username":"hsj","age":12},"user1":{"username":"sss","age":11}}

 }
}

 

一个含java对象集合变量的类,用于json字符串数组到对象集合:

 package com.Jtianlin.test;

import java.util.List;

public class ListBean {

 List<User> userList;

 public List<User> getUserList() {
  return userList;
 }

 public void setUserList(List<User> userList) {
  this.userList = userList;
 }
 }

 

package com.Jtianlin.test;

import java.io.IOException;
import java.util.List;
import java.util.Map;

import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;

public class JsonToBeans {
 
 public static void main(String[] args) throws Exception {
  
  //将json字符串转换成java对象
  String userJson = "{\"username\":\"jzx\",\"age\":10}";
  ObjectMapper objectMapper = new ObjectMapper();
  User user = objectMapper.readValue(userJson,User.class);
  System.out.println(user+":"+user.getUsername()+","+ user.getAge());
  //打印结果:com.Jtianlin.test.User@c2a132:jzx,10
  
  //将json字符串数组转换成java对象list集合。直接转换成list集合较为复杂,本例通过一个过渡对象
  //该对象里面存有一个list的java对象集合。通过转换成对象来实现集合对象的转换。
  String userListJson = "{\"userList\":[{\"username\":\"sss\",\"age\":11},{\"username\":\"hsj\",\"age\":12}]}";
  ListBean listBeans = objectMapper.readValue(userListJson, ListBean.class);
     System.out.println(listBeans.getUserList());
     //打印结果:[com.Jtianlin.test.User@1e0bc08, com.Jtianlin.test.User@158b649]
    
     //将json字符串转换成map集合,可以通过键来取得值。
     String mapJson = "{\"username\":\"hsj\",\"age\":12}";
     Map userMap = objectMapper.readValue(mapJson, Map.class);
     System.out.println(userMap+":" + userMap.get("username")+","+userMap.get("age") );
     //打印结果:{username=hsj, age=12}:hsj,12
    
  //将json字符串数组转换成Map的list集合。
  String json ="[{\"username\":\"sss\",\"age\":11},{\"username\":\"hsj\",\"age\":12}]}";
  List<Map> list = objectMapper.readValue(json, List.class); 
  System.out.println(list.get(0).get("username"));
  //打印结果:sss
 }

}

分享到:
评论

相关推荐

    jackson简单总结代码及jar包

    jackson简单用法总结,包括jar包和相应代码。该项目是用eclipse创建的dynamic web project 。若想运行在myeclipse中,需要新建一个web项目。然后将该项目下的src替换掉新建的项目src,webContent下的内容替换掉web...

    jackson-databind-2.9.2

    总结来说,Jackson-databind-2.9.2是Jackson库的一个关键版本,它提供了强大的JSON数据绑定功能,结合jackson-core和jackson-annotations,使得JSON与Java对象之间的转换变得简单而高效。通过理解和掌握这三个模块的...

    jackson-core-jackson-core-2.9.3

    总结,`jackson-core-2.9.3`作为Jackson的核心库,提供了Java与JSON之间的桥梁,通过其强大的序列化和反序列化能力,以及丰富的注解和API,使得JSON处理变得简单而高效。无论是在Web服务、数据存储还是API交互中,...

    Jackson实例入门

    总结,Jackson是一个强大的JSON处理库,其简单易用的API和高度可定制性使其成为Java开发者的首选。通过学习和实践,我们可以利用Jackson实现高效的JSON操作,提升项目开发的效率。在实际项目中,结合具体的业务需求...

    使用Jackson在Java中处理JSON

    总结起来,Jackson是一个强大的JSON处理库,它通过简单易用的API和丰富的注解,使得Java对象与JSON之间的转换变得灵活高效。无论是在处理简单的数据交换还是复杂的序列化场景,Jackson都能胜任。在实际开发中,理解...

    jackson操作json和javabean示例

    总结起来,这个项目旨在帮助开发者理解并熟练使用Jackson处理JSON数据,无论是通过高效且低内存占用的流式API,还是通过方便的工具类和灵活的树型模型。通过实践这些示例,可以提升JSON操作的技能,使Java应用在处理...

    官网jackson快速指导

    为了帮助理解 Jackson 的基本用法,以下是一个简单的使用示例: ```java import com.fasterxml.jackson.databind.ObjectMapper; import java.io.IOException; public class JacksonExample { public static void ...

    fastJson和gson的用法

    2. **API简洁**:FastJson的API设计简单易用,例如,可以使用`JSON.parseObject()`和`JSON.toJSONString()`进行JSON与Java对象之间的转换。 3. **支持Java特性**:FastJson支持Java泛型、注解、枚举等特性,使得数据...

    JSON深入浅出用法

    ### JSON深入浅出用法 #### 一、JSON概述 **JSON**,即**JavaScript Object Notation**(JavaScript对象表示法),是一种轻量级的数据交换格式。它与**XML**等其他数据交换格式相比,拥有更高的数据传输效率,并且...

    json简单的解析

    在本篇中,我们将深入探讨如何实现JSON的简单解析,特别是通过第三方框架的方式。 首先,我们来理解JSON的基本结构。JSON数据主要由对象(object)和数组(array)组成,对象以大括号{}包围,由键值对组成,键和值...

    json java 转换

    总结,Jackson库为Java开发者提供了强大的JSON处理能力,无论是简单的对象转换,还是复杂的序列化和反序列化需求,Jackson都能轻松应对。通过熟练掌握其用法,可以提高开发效率并优化代码质量。

    volley_okhttp_retrofit三种请求方式的基本用法

    总结来说,Volley适合简单且快速的网络请求,OkHttp适合需要高效连接管理和自定义缓存策略的场景,而Retrofit则适用于需要类型安全和代码整洁的项目。根据具体需求选择合适的网络请求库,可以提高开发效率并优化用户...

    ajax json java 用法 json 将List、Object转换为Json格式字符串

    ### AJAX JSON Java 用法:将 List 和 Object 转换为 Json 格式字符串 在现代 Web 开发中,Ajax(Asynchronous JavaScript and XML)技术被广泛应用于创建交互式的 Web 应用程序。其中,JSON(JavaScript Object ...

    java 对象与json字符串互相转换工具类

    Java对象与JSON字符串的转换是日常开发中的常见任务,选择合适的库并熟练掌握其用法至关重要。Jackson、Gson和Fastjson都是强大的工具,可以根据项目需求和性能要求选择使用。同时,理解转换过程中的常见问题和解决...

    解析json数组所用到的jar包以及demo

    总结,解析JSON数组在Java中是一项常见的任务,通过引入合适的jar包(如Jackson、Gson或org.json),我们可以轻松地完成这个任务。每个库都有其独特的优点和用法,选择哪一个取决于项目的需求和个人偏好。理解并熟练...

    java_json最完整例子

    本篇文章将深入探讨JSON在Java中的应用,并通过一个完整的例子来展示其用法。 首先,我们需要理解JSON的基本结构。JSON数据以键值对的形式存在,类似于JavaScript的对象,但不包含函数。主要的结构有两种:对象...

    Json解析demo

    总结起来,JSON解析在软件开发中扮演着关键角色,JackSon和Gson是Java开发中的得力工具,它们使得JSON数据的处理变得简单高效。理解并熟练掌握这两个库的使用,对于提升开发效率和优化代码质量大有裨益。同时,关注...

    Java解析json数据

    除了Jackson,Gson库也是常用的JSON解析工具,它的用法略有不同,但同样简单易用。例如,使用Gson将JSON字符串转化为Java对象: ```java import com.google.gson.Gson; public class GsonDemo { public static ...

    json 与java之间数据的转换

    通过使用Jackson库,我们可以方便地在JSON和Java对象之间进行转换,无论是简单的数据类型还是复杂的对象结构。在实际项目中,根据需求选择适合的JSON库,并熟练掌握其用法,能够提高开发效率,使数据处理更为便捷。

    JavaBean与Json相互转换

    此外,Gson库也是常用的Json处理库,它的用法与Jackson类似,但语法稍有不同。例如,Gson的转换方法如下: 1. 将JavaBean转换为Json字符串: ```java Gson gson = new Gson(); String jsonString = gson.toJson...

Global site tag (gtag.js) - Google Analytics