Data binding 将xml有效负载映射到不同的POJO对象

Data binding 将xml有效负载映射到不同的POJO对象,data-binding,jaxb,Data Binding,Jaxb,目前,我正在使用CXF框架开发Web服务。此webservices将通过调用我的DAO层来执行我的DB操作。我知道默认情况下,CXF使用JAXB进行数据绑定。 例如,如果我想创建一个新的人,我的Web服务如下所示 public Response createPerson(CreatePersonRequest request) { // Call to hibernate DAO class personDao.create() } 这里CreatePersonRequest是我的DTO类(

目前,我正在使用CXF框架开发Web服务。此webservices将通过调用我的DAO层来执行我的DB操作。我知道默认情况下,CXF使用JAXB进行数据绑定。 例如,如果我想创建一个新的人,我的Web服务如下所示

public Response createPerson(CreatePersonRequest request)
{

// Call to hibernate DAO class
personDao.create()
}

这里CreatePersonRequest是我的DTO类(JAXB注释),在调用我的DAO类之前,我想将我的DTO类对象转换为Hibernate实体对象。我想根据从Web服务收到的XML填充hibernate实体对象。但是我在这里接收到的XML将适合CreatePersonRequest,而不是我的Person实体对象。因为我的XML根标记将不是这个,所以这两个类的属性是相同的。简言之,我想为相同的XML负载填充两种不同类型的POJO对象?请帮助我。

我可以使用XStream使用XStream别名功能更改有效负载的根标记,然后我可以转换为我的实体对象。

如果我正确理解您的问题,它应该可以工作。你看到了什么问题?你能提供更多的细节吗?谢谢你的回复。我有两个类,像PersonRequest和Person。所以这两个类的根标记名是不同的。我正在接收的xml有效负载是,因此我可以使用JAXB而不是Person请求填充PersonRequest对象,不仅在这种情况下,有时我也会接收xml,这一次我还需要填充Person对象。