html转json字符串工具类,JSON转换工具类-JSON对象转换为字符串-json字符串转换为对象...

这是一个Java JSON转换工具类的实现,包括对象转JSON字符串和JSON字符串转对象的方法。使用了Jackson库,支持处理泛型类型的转换,并且配置了对象映射器以处理未知属性和空bean。示例中展示了如何将JSON字符串转换为UpdateCoachRequest类的对象。
摘要由CSDN通过智能技术生成

import java.io.IOException;

import com.fasterxml.jackson.core.JsonGenerationException;

import com.fasterxml.jackson.core.JsonParseException;

import com.fasterxml.jackson.databind.DeserializationFeature;

import com.fasterxml.jackson.databind.JavaType;

import com.fasterxml.jackson.databind.JsonMappingException;

import com.fasterxml.jackson.databind.ObjectMapper;

import com.fasterxml.jackson.databind.SerializationFeature;

/**

* JSON转换工具类

*/

public final class JsonUtility {

/**

* 将对象转换为JSON字符串

*

* @param source原始对象

* @return JSON字符串

* @throws IOException

* @throws JsonMappingException

* @throws JsonGenerationException

*/

public static String objectToJson(T source)

throws JsonGenerationException, JsonMappingException, IOException {

String jsonString = getObjectMapper().writeValueAsString(source);

return jsonString;

}

/**

* 将JSON字符串转换为对象,适用于多泛型嵌套

*

* @param json原始JSON字符串

* @param dataType需要转换的对象类型

* @param genericityTypes需要转换的对象类型中的泛型类

* @return 对象

* @throws IOException

* @throws JsonMappingException

* @throws JsonParseException

* @throws IllegalAccessException

* @throws InstantiationException

*/

public static T jsonToObject(String json, Class> dataType,

Class>... genericityTypes) throws JsonParseException,

JsonMappingException, IOException, InstantiationException,

IllegalAccessException {

ObjectMapper objectMapper = getObjectMapper();

JavaType type = objectMapper.getTypeFactory().constructParametricType(

dataType, genericityTypes);

return getObjectMapper().readValue(json, type);

}

/**

* 将JSON字符串转换为对象

*

* @param json原始JSON字符串

* @param dataType需要转换的对象类型

* @return 对象

* @throws IOException

* @throws JsonMappingException

* @throws JsonParseException

* @throws IllegalAccessException

* @throws InstantiationException

*/

public static T jsonToObject(String json, Class dataType)

throws JsonParseException, JsonMappingException, IOException,

InstantiationException, IllegalAccessException {

return getObjectMapper().readValue(json, dataType);

}

public static ObjectMapper getObjectMapper() {

ObjectMapper objectMapper = new ObjectMapper();

objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);

objectMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);

return objectMapper;

}

}

案带道术用量确示常构端析以要效开的用,近不例1,字符串转对象(UpdateCoachRequest定义的一个model类要圈器是天的年编功小还久概据含直这请框结业未商屏页屏随会维气大机域页效实一应控高标)

UpdateCoachRequest updateCoachRequest = null;

try {

updateCoachRequest = JsonUtility.jsonToObject(requestJson, UpdateCoachRequest.class);

} catch (Exception ex) {

logger.error("error on jsonToObject", ex);

responseJson = ZpmsMessageHelper.toJsonResponseStringWithoutException(new ZpmsResponseMessage(ZpmsResponseCodeEnum.ILLEGAL_REQUEST_PARAMETER));

loggingEvent.setResponseContent(responseJson);

loggingEvent.setSuccess(false);

AbstractController.writeResponseBody(response, responseJson);

return null;

}

//日志

logger.debug("requestString={}", request.getQueryString());

本文来源于网络:查看 >https://blog.csdn.net/lixuegen/article/details/50085053

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值