JSP jstl-core-<fmt:requestEncoding> 标记

  • jstl-core-<fmt:requestEncoding> 标记

    <fmt:requestEncoding>标记用于指定由形式的交数据返回给Web应用程序中使用的编码类型。
  • 属性

    属性 描述 必需 默认值
    key 解码请求参数时要应用的字符编码的名称。 没有
  • 示例

    当您要指定字符编码来解码从表单发布的数据时,可以使用<fmt:requestEncoding>标记。此标记必须与不同于ISO-8859-1的字符编码一起使用。由于大多数浏览器的请求中都不包含Content-Type标头,因此该标签是必需的。 <fmt:requestEncoding>标记的目的是指定请求的内容类型。即使必须通过page指令的contentType属性指定生成响应的页面的编码,也必须指定内容类型。这是因为响应的实际语言环境(以及字符编码)可能与page指令中指定的值不同。如果页面包含支持I18N的格式化操作,该行为通过调用ServletResponse.setLocale()来设置响应的语言环境(从而设置字符编码),则将覆盖page指令中指定的任何编码。
    
    <%@ 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