1、pom.xml
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.10.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.10.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.10.1</version>
</dependency>
2、工具类JacksonUtils
/**
* 常量
*
* @author caden
* @since 2022-10-23
*
*/
public class Constant {
public static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";
}
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.commons.lang3.StringUtils;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
/**
* json转换工具类
*
* @author caden
* @since 2022-10-23
*
*/
public class JacksonUtils {
private static ObjectMapper objectMapper = new ObjectMapper();
static {
// 所有的日期都统一用yyyy-MM-dd HH:mm:ss格式
objectMapper.setDateFormat(new SimpleDateFormat(Constant.DEFAULT_DATE_FORMAT));
// 忽略字符串存在,对象不存在的属性
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES,false);
}
/**
* 对象转json字符串
*
* @param value 需要转换的对象
* @return json格式字符串
*/
public static String objToStr (Object value) {
String result = StringUtils.EMPTY;
try {
result = objectMapper.writeValueAsString(value);
} catch (JsonProcessingException ex) {
}
return result;
}
/**
* 字符串转自定义对象
*
* @param content 需要转换的字符串
* @param valueType 需要转换后的类型
* @param <T> 泛型
* @return 转换后对象
*/
public static <T> T strToObj (String content, Class<T> valueType) {
T result = null;
try {
result = objectMapper.readValue(content, valueType);
} catch (JsonProcessingException e) {
}
return result;
}
/**
* json字符串转换为List
*
* @param content 需要转换的字符串
* @param valueType 需要转换后的类型
* @param <T> 泛型
* @return 转换后的集合
*/
public static <T> List<T> strToList(String content, Class<T> valueType) {
List<T> list = new ArrayList<>();
try {
list = objectMapper.readValue(content, objectMapper.getTypeFactory().constructCollectionType(List.class, valueType));
} catch (JsonProcessingException ex) {
}
return list;
}
}
1136

被折叠的 条评论
为什么被折叠?



