<fmt:requestEncoding> 标签

<fmt:requestEncoding>标签用来指定返回给Web应用程序的表单编码类型。

语法格式

  1. <fmt:requestEncoding value="<string>"/>

属性

<fmt:requestEncoding>标签有如下属性:

属性描述是否必要默认值
key字符编码集的名称,用于解码request参数

使用<fmt:requestEncoding>标签来指定字符集,用于解码来自表单的数据。在字符集不是ISO-8859-1时必须使用这个标签。由于大多数浏览器在它们的请求中不包含Content-Type头,所以需要这个标签。

<fmt:requestEncoding>标签的目的就是用来指定请求的Content-Type。您必须指定一个Content-Type,就算response是通过Page指令的contentType属性来编码。这是因为response的实际区域可能与Page指令所指定的不同。

如果页面包含 I18N-capable格式行为用于设置response的locale属性(通过调用ServletResponse.setLocale()方法),任何在页面中指定的编码集将会被覆盖。

实例演示

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
  4. <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
  5. <html>
  6. <head>
  7. <title>JSTL fmt:message 标签</title>
  8. </head>
  9. <body>
  10. <fmt:requestEncoding value="UTF-8" />
  11. <fmt:setLocale value="es_ES"/>
  12. <fmt:setBundle basename="com.java.Example" var="lang"/>
  13. <fmt:message key="count.one" bundle="${lang}"/><br/>
  14. <fmt:message key="count.two" bundle="${lang}"/><br/>
  15. <fmt:message key="count.three" bundle="${lang}"/><br/>
  16. </body>
  17. </html>

运行结果如下:

  1. Uno
  2. Dos
  3. Tres