@Configuration
public class JsonConfig {
* Jackson全局转化long类型为String,解决jackson序列化时long类型缺失精度问题
* @return Jackson2ObjectMapperBuilderCustomizer 注入的对象
@Bean
public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {
return new Jackson2ObjectMapperBuilderCustomizer() {
@Override
public void customize(Jackson2ObjectMapperBuilder jacksonObjectMapperBuilder) {
jacksonObjectMapperBuilder.serializerByType(Long.TYPE, ToStringSerializer.instance);
jacksonObjectMapperBuilder.serializerByType(Long.class, ToStringSerializer.instance);
使用Jackson实现对象,json,xml,map的转换前言一、pom文件二、创建实体类三、对象、json、xml、map的转换四、运行结果前言使用Jackson实现对象,json,xml,map的互相转换使用的包包名版本jackson-databind2.12.3jackson-dataformat-xml2.12.3一、pom文件 <dependency> <groupId>com.faster
jackson-core:核心包,提供基于"流模式"解析的相关API,包括JsonPaser和JsonGenerator;
jackson-annotations:注解包,提供标准注解功能;
jackson-databind:数据绑定包,提供基于"对象绑定"解析的相关API(ObjectMapper)和"树模型"解析的相关API(JsonNode)。
Jackson 库提供了一个 ObjectMapper 类,可以用来实现对象和 Map<String, Object> 之间的相互转换。
将对象转换为 Map<String, Object> 的方法如下:
ObjectMapper mapper =new ObjectMapper();
Map<String, Object> map = mapper.conve...
@JacksonXmlRootElement(localName = "service")
public class XmlService {
@JacksonXmlProperty(localName = "SYS_HEAD")
private SysHeader sysHeader;
@JacksonXmlProperty(localName = "L...
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.7.4</version>
</dependency>
记好上面那个版本 这个版本的jackson是有问题的
ObjectMapper的readTree方法 从字符串..
```java
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import com.fasterxml.jackson.dataformat.yaml.YAMLMapper;
import java.io.File;
import java.io.IOException;
public class YamlToJsonXmlConverter {
public static void main(String[] args) {
// 读取YAML文件
File yamlFile = new File("example.yaml");
// 创建ObjectMapper实例
ObjectMapper yamlMapper = new YAMLMapper();
ObjectMapper jsonMapper = new ObjectMapper();
XmlMapper xmlMapper = new XmlMapper();
try {
// 将YAML转换为JSON
Object yamlObject = yamlMapper.readValue(yamlFile, Object.class);
String jsonString = jsonMapper.writeValueAsString(yamlObject);
System.out.println(jsonString);
// 将YAML转换为XML
String xmlString = xmlMapper.writeValueAsString(yamlObject);
System.out.println(xmlString);
} catch (IOException e) {
e.printStackTrace();
在本例中,我们使用了Jackson库的`YAMLMapper`、`ObjectMapper`和`XmlMapper`类来分别读取YAML文件、将YAML转换为JSON和XML格式。请注意,我们需要提供一个Java对象类型以告诉Jackson如何解析YAML文件。在本例中,我们使用了`Object.class`,这意味着Jackson将把YAML转换为一个Map对象。