使用自定义对象而不是@FormParam作为JAX-RS资源输入

Luk*_*awa 3 java jax-rs jersey

我有一个示例代码:

@PUT
public String method(@FormParam("firstName") String firstName, 
                     @FormParam("lastName") String lastName ) {
    Person person = new Person(firstName, lastName);
    // ...
}
Run Code Online (Sandbox Code Playgroud)

我想停止使用@FormParams并使用Person代替:

@PUT
public String method(@Person person) {
    // ...
}
Run Code Online (Sandbox Code Playgroud)

最好的方法是什么?

我正在尝试使用自定义BodyReader,但我必须"手动"解析readFrom方法中的InputStream .

这是正确的方法吗?如果是,将InputStream转换为KEY => VALUE HashMap的最佳方法是什么?