JSP页面中的pageEncoding和contentType的区别
<%@ page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
pageEncoding:只是指明了 JSP 页面本身的编码格式,跟页面显示的编码没有关系;
contentType的charset是指服务器发送给客户端时的内容编码 ,指定了MIME类型和JSP页面回应时的字符编码方式。MIME类型的默认值是“text/html”;字符编码方式的默认值是“ISO-8859-1”. MIME类型和字符编码方式由分号隔开;
JSP要经过两次的“编码”:
第一阶段,用pageEncoding(即:把jsp编译成.java文件)指定的charset对jsp文件进行编码.
第二阶段,用utf-8至utf-8(即把.java文件编译成.class文件).
第三阶段,由Tomcat或其他应用服务器,response出来的网页,用的是contentType指定的字符集对所显示出来的页面进行编码.
pageEncoding:只是指明了 JSP 页面本身的编码格式,跟页面显示的编码没有关系;
contentType的charset是指服务器发送给客户端时的内容编码 ,指定了MIME类型和JSP页面回应时的字符编码方式。MIME类型的默认值是“text/html”;字符编码方式的默认值是“ISO-8859-1”. MIME类型和字符编码方式由分号隔开;
JSP要经过两次的“编码”:
第一阶段,用pageEncoding(即:把jsp编译成.java文件)指定的charset对jsp文件进行编码.
第二阶段,用utf-8至utf-8(即把.java文件编译成.class文件).
第三阶段,由Tomcat或其他应用服务器,response出来的网页,用的是contentType指定的字符集对所显示出来的页面进行编码.
参考: