`

使用jackson生成json对象的实例

阅读更多
这里写了一个将json和Java的Object对象进行互相转换的Util工具类。
这里以maven为例,导入jackson的两个dependency。

<dependency>
	<groupId>com.fasterxml.jackson.core</groupId>
	<artifactId>jackson-databind</artifactId>
	<version>2.2.3</version>
</dependency>

<dependency>
	<groupId>com.fasterxml.jackson.core</groupId>
	<artifactId>jackson-annotations</artifactId>
	<version>2.2.3</version>
</dependency>


接下来是util实例

package com.lj.basic.util;

import java.io.StringWriter;

import com.fasterxml.jackson.core.JsonFactory;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonUtil {
	private static JsonUtil jsonUtil;
	private static JsonFactory jsonFactory;
	private static ObjectMapper objectMapper;
	private JsonUtil(){
		
	}
	
	public static JsonUtil getInstance(){
		if(jsonUtil==null) jsonUtil=new JsonUtil();
		return jsonUtil;
	}
	
	public static ObjectMapper getMapper(){
		if(objectMapper == null){
			objectMapper=new ObjectMapper();
		}
		return objectMapper;
	}
	
	public static JsonFactory getFactory(){
		if(jsonFactory==null) jsonFactory=new JsonFactory();
		return jsonFactory;
	}
	
	public String obj2json(Object obj){
		JsonGenerator jsonGenerator = null;
		try {
			jsonFactory=getFactory();
			objectMapper=getMapper();
			StringWriter out = new StringWriter();
			jsonGenerator = jsonFactory.createGenerator(out);
			objectMapper.writeValue(jsonGenerator, obj);
			return out.toString();
			
		} catch (Exception e) {
			e.printStackTrace();
		}
		finally{
			try {
				if(jsonGenerator!=null)jsonGenerator.close();
			} catch (Exception e2) {
				 e2.printStackTrace();
			}
		}
		
		return null;
	}

	
	public Object json2obj(String json, Class<?> clz){
		try {
			objectMapper=getMapper();
			return objectMapper.readValue(json, clz);
		} catch (Exception e) {
			e.printStackTrace();
		}
		
		return null;
	}
	

}



分享到:
评论

相关推荐

    使用jackson完成json与java对象的互相转换实例

    本实例将详细介绍如何使用Jackson库进行JSON到Java对象的反序列化以及Java对象到JSON的序列化。 首先,我们需要引入Jackson库。在Maven项目中,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;...

    java开发生成json的jar包

    Jackson是功能强大的JSON处理库,提供了多种方式来解析和生成JSON;而Gson则是Google提供的库,它能将Java对象转换为JSON字符串,反之亦然。 1. **Jackson库**: - `ObjectMapper`:这是Jackson的核心类,可以将...

    java对象映射器(基于jackson将Java对象转为json,或者将json转为Java对象)

    从Java对象生成JSON的过程称为 [序列化Java对象到JSON] 为什么用它? 答:我数据库中的主键是使用雪花算法生成的,就是因为用id的位数太多,导致在前台我点击删除/修改按钮后传入到后端的id会缺少精度。(比如本应该...

    Jackson实现Object对象与Json字符串的互转

    Jackson是Java领域中广泛使用的JSON处理库,它提供了强大的数据绑定功能,使得Java对象与JSON字符串之间能够方便地进行转换。在本篇文章中,我们将深入探讨如何使用Jackson库实现Object对象与Json字符串的互转。 ...

    java操作json实例

    本实例将重点介绍如何使用Java的Jackson库进行JSON操作。 首先,安装Jackson库。在Maven项目中,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;com.fasterxml.jackson.core&lt;/groupId&gt; &lt;artifactId&gt;...

    java实现http请求以及解析json与java对象转换 项目源代码实例

    - JSON序列化:将Java对象转换为JSON字符串,如使用Jackson的`ObjectMapper.writeValueAsString()`方法。 3. **Java对象转换**: - 数据模型(Data Model):定义Java类来表示JSON数据结构。 - 注解:如Jackson...

    json jackson 工具类

    8. **JSON Schema支持**:Jackson还支持生成JSON Schema,这是一个规范,描述了JSON数据的结构和约束。 在实际开发中,这样的工具类大大简化了JSON操作,提高了代码的可读性和可维护性。通过封装Jackson,开发者...

    json转对象(java 多级嵌套)

    总结,Java中处理JSON到对象的转换,特别是面对多级嵌套的情况,关键在于理解JSON结构并构建相应的Java对象模型,然后利用如Jackson这样的库进行数据映射。通过熟练掌握这些工具和技巧,可以有效地在Java应用中处理...

    jackson(json)开发的三个jar包 (2.5.4)

    Jackson是Java领域中广泛使用的JSON处理库,它提供了一套高效、灵活的API来解析、生成、序列化和反序列化JSON数据。标题提到的"jackson(json)开发的三个jar包 (2.5.4)"是Jackson库的核心组件,包括: 1. **...

    ajax解析json实例

    在Java中,我们可以使用各种库来生成JSON,如Gson、Jackson、org.json等。以Gson为例,首先需要添加Gson库依赖,然后创建一个Java对象并转换为JSON字符串: ```java import com.google.gson.Gson; public class...

    使用Json的Ajax实例

    1. **创建JSON对象**:在JavaScript中,我们可以使用`JSON.stringify()`方法将JavaScript对象转换为JSON字符串,以便通过Ajax发送。例如: ```javascript var obj = {name: "John", age: 30, city: "New York"}; ...

    Jackson学习实例

    Jackson是Java领域中广泛使用的JSON处理库,它提供了高效的序列化和反序列化功能,使得Java对象能够轻易地转换为JSON格式,反之亦然。在本"Jackson学习实例"中,我们将深入探讨Jackson库的核心概念、主要功能以及...

    jackson(Java JSON工具库)(3 in 1)

    例如,`@JsonProperty`用于指定字段与JSON属性的映射,`@JsonCreator`和`@JsonValue`用于自定义对象实例化和转换为JSON的方式,`@JsonIgnore`则可以忽略特定字段不参与序列化和反序列化。通过使用这些注解,开发者...

    基于Java的实例源码-高性能的JSON处理 Jackson.zip

    这些示例可能涵盖了如何高效地解析JSON输入、生成JSON输出以及映射JSON到Java对象等方面,旨在帮助开发者更好地理解和利用Jackson库提升JSON处理性能。 描述中提到的“高性能的JSON处理 Jackson.zip”进一步强调了...

    java对象与json对象的转换

    `JSONObject.fromObject(new JsonBean())`将`JsonBean`实例转换为一个包含所有字段的JSON对象。 4. **Beans集合转换** 当需要转换包含多个Bean对象的列表时,可以同样使用`JSONArray.fromObject()`。这里,创建了...

    利用jackson包进行json字符串与pojo类之间的转换源代码

    Jackson是Java领域内最流行的JSON处理库之一,它提供了强大的JSON解析、生成以及对象绑定功能。本篇将详细介绍如何利用Jackson包进行JSON字符串与POJO(Plain Old Java Object)类之间的转换,并探讨相关源码。 ...

    json架包和java对象转json实例

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在Java编程中,我们经常需要将Java对象转换为JSON字符串,以便在网络间传输数据或者存储到文件中。这...

    这里是一个json数据解析json对象数组的示例程序

    这段代码首先创建了一个`ObjectMapper`实例,它是Jackson库的核心,负责JSON与Java对象之间的转换。然后,通过`readValue`方法将JSON字符串解析为一个`List&lt;User&gt;`对象。`TypeReference`是用来指定目标类型,因为...

    json快速生成实体类

    本文将详细介绍如何快速生成JSON对应的实体类。 一、JSON的基本结构 JSON主要由对象和数组两种结构组成: 1. 对象:以花括号 `{}` 包围,由键值对组成,键与值之间用冒号 `:` 分隔,各个键值对之间用逗号 `,` ...

Global site tag (gtag.js) - Google Analytics