JSTL Core < fmt:requestEncoding > 标签
<fmt:requestEncoding>
标签用于指定编码类型,该编码类型用于将数据传回到 Web 应用程序的表单中。
属性:
<fmt:requestEncoding>
标签具有如下所示属性:
属性 | 描述 | 是否必需 | 默认值 |
---|---|---|---|
key | 当解码请求参数时,你想要应用的字符编码的名称 | 是 | 无 |
当你想要为从表单发送的解码数据指定字符编码时,你就会用到 < fmt:requestEncoding > 标签。该标签必须和与 ISO-8859-1 不同的字符编码一起使用。由于大多数浏览器在它们的请求中不包括内容类型的头信息,所以这个标签是必需的。
<fmt:requestEncoding>
标签的目的是指定请求的内容类型。你必须指定内容类型,即使页面编码生成的响应式通过页面指令的内容类型属性指定的。这是因为响应的实际语言环境(以及字符编码)可能与页面指令中指定的值不同。
如果页面包含一个 I18N-capable 格式化操作,通过调用 ServletResponse.setLocale() 设置了响应的语言环境(以及字符编码),任何在页面指令中指定的编码都将被覆盖。
实例:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> <html> <head> <title>JSTL fmt:message Tag</title> </head> <body> <fmt:requestEncoding value="UTF-8" /> <fmt:setLocale value="es_ES"/> <fmt:setBundle basename="com.tutorialspoint.Example" var="lang"/> <fmt:message key="count.one" bundle="${lang}"/><br/> <fmt:message key="count.two" bundle="${lang}"/><br/> <fmt:message key="count.three" bundle="${lang}"/><br/> </body> </html>
这将产生如下所示的结果:
Uno Dos Tres