凡事必须知其然并知其所以然,所以我决定先弄明白为什么出乱码
tomcat 使用的默认编码是 ISO-8859-1,所以必须注意一下,如果没对编码进行设置,那么tomcat都会使用这个编码
OK,我们来看看@page中的两个属性
contentType与pageEncoding:
前者用来给browser查看时所用的编码,所以在jsp页面中写
<meta http-equiv="Content-Type" content="text/html;charset=GB18030" />
就显得没有意义,但是如果我们没对contentType属性进行设置,则使用pageEncoding的编码方式
但让在contentType存在时,则使用该编码
所以,当你写了pageEncoding时完全可以不写contentType

后者,用于编译时使用,而response.getCharsetEncoding()获取的也是这个编码方式,这一点我是做个实验的
所以综上所述,只要你在jsp文件中写了<@page pageEncoding="gb2312">之流的东东,就绝对不会出乱码