为您写数据库毕业论文和职称论文提供关于数据库专升本毕业论文范文,与关于JSP乱码问题总结相关论文范文文献,包括关于数据库及乱码及参考文献方面的论文题目、提纲、开题报告、文献综述、参考文献的大学硕士和本科毕业论文,是免费优秀的数据库论文范文。
摘 要 :在利用Servlet/JSP技术开发Java Web应用程序的时候经常会遇到乱码的问题,包括服务器端的提交,以及通过浏览器的表示等.本文首先分析了从JSP到浏览器的执行过程,给出了jsp本身表示时产生乱码的原因及对策,然后在此基础上针对JSP应用中出现的一些常见的乱码问题,并提出了一些对应的解决方案,希望给开发人员在编码时提供帮助.
关 键 词 :JSP;乱码;WEB开发
中图分类号:TP3文献标识码:A文章编号:1007-9599 (2012) 06-0000-02
一、问题提出
基于jsp的项目开发中经常遇到乱码的问题,包括:jsp自身页面固定文字的在浏览器上表示时的乱码,从客户端通过浏览器提交到服务器端时的乱码,以及服务器端登陆到DB中的乱码等等.对于初学者来说,这是一件令人非常头疼的事,无从下手,本文通过分析jsp的执行原理,在此基础上给出了一些乱码问题的解决方案,供大家参考.
二、从JSP到浏览器的执行过程
从服务器端的jsp源文件如何执行到客户端的文件的呢?其中涉及到编码相关的过程如下.
(1)以某种编码格式保存jsp文件,例如GBK.
(2)Jsp/Servlet引擎提供的jsp转换工具(JSPC),现根据JSP文件中的<%@page pageEncoding="%>中指定的pageEncoding将jsp转化成java文件,如果jsp文件中没有指定pageEncoding,则取JVM的默认的设置file.encoding,一般情况下,这个值是ISO-8859-1.生成的Java文件的位置一般保存在
$CATALINA_HOME\work\Catalina\localhost\Context名的下面.
实际上,生成的JSP中的内容是按照pageEncoding映射到unicode,并通过utf-8格式写到java文件中的.
(3)把临时文件编译成class文件.
(4)class文件执行时,先从class文件中用readUTF读出字符串,在内存中是unicode编码.
(5)根据pageEncoding,把unicode转化成字节流.
(6)把字节流输出到浏览器(ie等)中,并根据jsp中的
<%@page language="java" contentType="text/; charset=
另外,HTML中有个标签中也指定了charset,如果jsp中没有指定
总结,从jsp源文件到客户端的编码过程为:pageEncoding到unicode到utf-8到unicode到Jsp-charset,由于unicode和utf-8之间的相