通过JAXB看XML外部实体注入(XML External Entity)

本文探讨了如何通过JAXB处理XML外部实体注入(XXE)问题。介绍了使用JAXB注解定义Java类与XML映射,并展示了在XML内容中存在外部实体时,如何通过xmlToObjectSafe方法安全地进行对象与XML的转换。
摘要由CSDN通过智能技术生成

我们先使用JAXB提供的注解标记下java类和XML映射关系:

package jaxb;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Student {

	@XmlElement(name = "name")
	private String name;

	public String getName() {
		return name;
	}

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

	@Override
	public String toString() {
		return "Student [name=" + name + "]";
	}

}


下面这个类使用JAXB的API进行对象和xml直接的相互转换:

package jaxb;

import java.io.FileInputStream;
import java.io.StringReader;
import java.io.StringWriter;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值