java中文乱码解决之道(七)—–JSP页面编码过程
这篇讲的是JSP页面开发中那个让人头疼的中文乱码问题,尤其是根源常常藏在JSP转换为Servlet的编码过程里。作者直接拆解了关键指令页中的两个编码参数:`pageEncoding`(JSP文件本身的编码)和`contentType`的`charset`(发送给客户端的编码)。 文章核心梳理了转换过程的三次编码“变阵”:第一次JVM编译.jsp文件时,会依据`pageEncoding`或默认编码来读取源码;第二次生成.class文件时,所有内容都被统一转换成Unicode,之前的编码设置在此阶段无效;第三次业务处理后输出到浏览器,则由`contentType`的`charset`决定解码方式,否则会退回默认的ISO-8859-1。 所以,中文乱码的伏笔其实在这几个阶段的配合中早已埋下。搞清楚每个阶段谁说了算,才能在实际开发中精准配置,避免字符“南辕北辙”。