我有一个类似于下面的服务类。
@Component
@Path("/employees/")
@Produces(MediaType.APPLICATION_JSON)
public class EmpService {
@POST
public Response addEmployee(Emp emp) {
// some code here to add Emp.
}
}
@XmlRootElement
public class Emp {
private String name;
private int age;
// etc.,
}
我还需要读取几个自定义HTTP标头参数,并将其包含在我方法的业务逻辑中。我阅读了有关使用@HeaderParam或@Context HttpHeaders传递标题参数的注释。在这些选项中的任何一个中,都需要更改方法签名以在addEmployee()方法中传递额外的args,这是我想避免的。
相反,有没有选择在我的Emp对象本身注入(类似于下面的代码片段)?
@XmlRootElement
public class Emp {
@HeaderParam("myParam1") // some thing similar to these
private String headerParam1;
@HeaderParam("myParam2")
private String headerParam2;
// To be mapped from HTTP body payload
private String name;
private String age;
// etc.,
}