将 Java 对象自动转换为 XML 字符串

1.创建Java类并使用JAXB注解

java 复制代码
import javax.xml.bind.annotation.XmlRootElement;  
import javax.xml.bind.annotation.XmlElement;  

@XmlRootElement  
public class Customer {  
    private String name;  
    private int age;  

    // JAXB要求有一个无参构造函数  
    public Customer() {  
    }  

    // 构造函数、getter和setter略  

    @XmlElement  
    public String getName() {  
        return name;  
    }  

    public void setName(String name) {  
        this.name = name;  
    }  

    @XmlElement  
    public int getAge() {  
        return age;  
    }  

    public void setAge(int age) {  
        this.age = age;  
    }  
}

2.将Java对象转换为XML字符串

java 复制代码
import javax.xml.bind.JAXBContext;  
import javax.xml.bind.Marshaller;  
import java.io.StringWriter;  

public class JAXBExample {  
    public static void main(String[] args) throws Exception {  
        Customer customer = new Customer();  
        customer.setName("John Doe");  
        customer.setAge(30);  

        JAXBContext jaxbContext = JAXBContext.newInstance(Customer.class);  

        Marshaller marshaller = jaxbContext.createMarshaller();  
        marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);  

        StringWriter writer = new StringWriter();  
        marshaller.marshal(customer, writer);  

        String xmlString = writer.toString();  
        System.out.println(xmlString);  
    }  
}
相关推荐
Evand J8 小时前
【2026课题推荐】基于小波/互相关/FFT的卡尔曼滤波的轨迹估计,及MATLAB例程的运行结果
开发语言·matlab·目标跟踪·轨迹跟踪
独自归家的兔8 小时前
Java Robot 详解:系统级鼠标 / 键盘模拟的核心原理与实战
java·开发语言
小灰灰搞电子8 小时前
Qt 开发环境选择Qt Creator、Visual Studio还是 VS Code?
开发语言·qt·visual studio
岳轩子8 小时前
DDD领域驱动设计:核心概念、实践结构与框架对比
java·spring
何中应8 小时前
Bean的三种注入方式
开发语言·spring boot·后端·spring
ArabySide8 小时前
【Java】重构之善用多态解耦,记录一次模板方法实践
java·重构·模板方法模式
wanghowie8 小时前
01.03 Java基础篇|面向对象核心与设计实践
java·开发语言
vortex58 小时前
ORM是什么?如何理解ORM?ORM的优缺点?
java·数据库·sql·mysql·oracle·orm
Algebraaaaa8 小时前
为什么线程阻塞要用.join而不是.wait
java·c++·python
巴拉巴拉~~8 小时前
Flutter 通用滑块组件 CommonSliderWidget:单值 / 范围 + 刻度 + 标签 + 样式自定义
开发语言·前端·javascript