字符集编码也要动态灵活性?这种灵活性的目的是什么。我觉得只要你所有的地方都是用utf-8,就已经很有灵活性了。其实有些问题我觉得是作为程序员的我们考虑太复杂了。

解决方案 »

  1.   

    meta本来就是HTML的标签,当然在html文件中设置字符集没有问题,但是通过它来设置JSP的字符集想想也不靠谱吧,一般jsp页面都是通过<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>来设置的,有可能是tomcat7针对这个问题进行了规范,也不能说是bug。
      

  2.   

    楼上外链广告,已鉴定。
    filter里response.setContentType设置一下默认响应格式,jsp里没有page指令不知道tomcat会不会自己又往生成的java文件里添加response.setContentType这句,可以测试一下,打开tomcat工作目录查看一下jsp生成的java文件
      

  3.   

    6楼,你说的这些都试了,也都看了(包括jsp经tomcat编译后的java源文件),也都合理,一样的工程,一样的文件,tomcat7、8就是有乱码,tomcat6就是没有。
      

  4.   

    浏览器收到的Content-Type是啥,也许可以调试一下看看tomcat在哪里把他改掉了
      

  5.   

    收到的是ISO-8...不是UTF-8,但是不知道在哪里改了。
      

  6.   

    2楼正解,不多说!!可以去看看jsp和tomcat的机制
      

  7.   

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    加在页面最开始,html的上边,IDE所有的编码格式都设置为utf-8
      

  8.   

    大家不要再问什么配置UTF-8编码之类的问题了。
    我是特意从网上下的tomcat6和tomcat7,一样的工程,6无乱码,7有乱码,请大家仔细看我主贴的描述,谢谢。
      

  9.   

    难道大家用jsp的时候,每个页面都有这么一句吗?
    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    你们就不怕程序员一手抖写错,或者拷贝错?