Java 使用XML的REST Web服务

Java 使用XML的REST Web服务,java,xml,web-services,rest,Java,Xml,Web Services,Rest,我正在学习RESTWebService,对一些概念感到困惑。 我想创建一个使用XML的RESTful Web服务,如: <?xml version="1.0" encoding="UTF-8"?> <emp:EmployeeEntry xmlns:emp="http://www.employee/entry"> <emp:number>12345</emp:number> <emp:name>George</emp:nam

我正在学习RESTWebService,对一些概念感到困惑。 我想创建一个使用XML的RESTful Web服务,如:

<?xml version="1.0" encoding="UTF-8"?>
<emp:EmployeeEntry xmlns:emp="http://www.employee/entry">
  <emp:number>12345</emp:number>
  <emp:name>George</emp:name>
  <emp:date>2015-04-03</emp:date>
  <emp:address>
    <emp:city>Paris</emp:city>
    <emp:street>East 35</emp:street>
  </emp:address>
</emp:EmployeeEntry>
应该是这样吗? (因为我看到了一些使用XML的方法的示例,但它们将参数作为主要的实体对象,例如Employee,我不理解使用XML的方法如何接受实体对象作为参数)

另外,如果该方法以XML作为参数,那么我是否必须在该方法中实现解析逻辑,然后从中创建Employee对象并启动主创建逻辑


我有一些知识差距,请给我推荐一些例子或一些好的教程

您不需要将输入参数指定为XML字符串,例如JAX-RS会自动为您进行转换

请参见下面的示例:

@Path("/employee")
public class EmployeeService {
    @GET
    @Path("/get")
    @Produces("application/xml")
    public Employee getEmployee() {
        Employee emp = new Employee();
        emp.setName("Test Employee");
        return emp;
    }

    @POST
    @Path("/create")
    @Consumes("application/xml")
    public Response createEmployee(Employee emp) {
        // Write your code here to save the employee
    }
}
您可以查看更多信息

@Path("/employee")
public class EmployeeService {
    @GET
    @Path("/get")
    @Produces("application/xml")
    public Employee getEmployee() {
        Employee emp = new Employee();
        emp.setName("Test Employee");
        return emp;
    }

    @POST
    @Path("/create")
    @Consumes("application/xml")
    public Response createEmployee(Employee emp) {
        // Write your code here to save the employee
    }
}