47.2.4. 注入 HTML 格式的数据

概述

HTML 表单是一种从用户获取信息的简单方法,也易于创建。表单数据可用于 HTTP GET 请求和 HTTP POST 请求:

GET
作为 HTTP GET 请求的一部分发送表单数据时,数据会作为一组查询参数附加到 URI。“使用查询参数”一节 中讨论从查询参数注入数据。
POST
当将数据作为 HTTP POST 请求的一部分发送时,数据会被放入 HTTP 消息正文中。可使用支持表单数据的常规实体参数处理表单数据。它还可通过使用 @FormParam 注释来提取数据并将组件注入资源方法参数来处理。

使用 @FormParam 注释来注入表单数据

javax.ws.rs.FormParam 注解从表单数据中提取字段值,并将值注入资源方法参数。该注释采用单个参数来指定从中提取值的字段键。关联的参数必须符合 “支持的数据类型”一节 中描述的数据类型。

重要

JAX-RS API Javadoc指出可以将 @FormParam 注释放在不同的字段、方法和参数上。但是,@FormParam 注释仅在放置在资源方法参数上时才有意义。

示例

将表单数据注入资源方法参数 显示将表单数据注入参数的资源方法。这个方法假定客户端表单包含三个字段:标题标签正文,其中包含字符串数据。

将表单数据注入资源方法参数

import javax.ws.rs.FormParam;
import javax.ws.rs.POST;

...
@POST
public boolean updatePost(@FormParam("title") String title,
                          @FormParam("tags") String tags,
                          @FormParam("body") String post)
{
  ...
}