JSP 中的页面编码
Posted
技术标签:
【中文标题】JSP 中的页面编码【英文标题】:Page Encoding in JSP 【发布时间】:2011-04-05 12:04:54 【问题描述】:指定页面编码的最佳方式是什么 - 使用这样的页面指令?
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
还是直接放在meta标签里?
<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head>
Eclipse 默认同时使用两者,这是否意味着我需要两者?
【问题讨论】:
【参考方案1】:你不需要两者。其实<%@ page pageEncoding="utf-8" %>
就够了。
【讨论】:
请注意,这意味着每个页面渲染在开始时都会运行此指令。引用JSP spec(...) for this purpose, they (the pageEncoding setting) should appear at the beginning of the page (see Section JSP.4.1)
因此,在 web.xml
中为所有 JSP 定义它通常是有意义的。【参考方案2】:
如果您需要使用 UTF-8,您还需要为您的连接 url 以及请求和响应设置字符集。
【讨论】:
【参考方案3】:我认为你需要两者,不是吗?我的猜测是 page 指令 告诉 Container 使用指定的编码编译 JSP,而 meta 标签 告诉 browser 页面是如何编码的。
【讨论】:
页面指令也隐式设置了相应的响应头。以上是关于JSP 中的页面编码的主要内容,如果未能解决你的问题,请参考以下文章