JSP/Servlet的编码原理
JSP/Servlet的编码原理
关键字: jsp, servlet编码
首先,说说 JSP/Servlet 中的几个编码的作用
在 JSP/Servlet 中主要有以下几种设置编码的方式:
pageEncoding ="UTF-8"
contentType = "text/html;charset=UTF-8"
request.setCharacterEncoding("UTF-8")
response.setCharacterEncoding("UTF-8")
其中前两个只能用于JSP 中,而后两个可以用于 JSP 和 Servlet 中。
1、pageEncoding="UTF-8" 的作用是设置 JSP 编译成 Servlet 时使用的编码
众所周知,JSP 在服务器上是要先被编译成 Servlet 的。pageEncoding="UTF-8" 的作用就是告诉 JSP 编译器在将 JSP 文件编译成 Servlet 时使用的编码。通常,在 JSP 内部定义的字符串(直接在 JSP 中定义,而不是从浏览器提交的数据)出现乱码时,很多都是由于该参数设置错误引起的。例如,你的JSP 文件是以GBK 为编码保存的,而在JSP 中却指定pageEncoding="UTF-8" ,就会引起JSP 内部定义的字符串为乱码。
另外,该参数还有一个功能,就是在JSP中不指定 contentType 参数,也不使用response.setCharacterEncoding 方法时,指定对服务器响应进行重新编码的编码。
2、contentType="text/html;charset=UTF-8" 的作用是指定对服务器响应进行重新编码的编码
在不使用 response.setCharacterEncoding 方法时,用该参数指定对服务器响应进行重新编码的编码。
3、 request.setCharacterEncoding("UTF-8") 的作用是设置对客户端请求进行重新编码的编码。
该方法用来指定对浏览器发送来的数据进行重新编码(或者称为解码)时,使用的编码。
4、 response.setCharacterEncoding("UTF-8") 的作用是指定对服务器响应进行重新编码的编码。
服务器在将数据发送到浏览器前,对数据进行重新编码时,使用的就是该编码。
其次,要说一说浏览器是怎么样对接收和发送的数据进行编码的
response.setCharacterEncoding("UTF-8") 的作用是指定对服务器响应进行重新编码的编码。同时,浏览器也是根据这个参数来对其接收到的数据进行重新编码(或者称为解码)。所以在无论你在 JSP 中设置 response.setCharacterEncoding("UTF-8") 或者response.se
相关文档:
一般的网页都有这种功能:在页面上动态显示当前时间,这个的实现也很简单,基本上一行代码就实现了
<span id="curTime"></span>
<script type="text/javascript"><!--
setInterval("curTime.innerHTML=new Date().toLocaleString()+' 星期'+'日一二三四五六'.charAt(new Date().getDay());",1000 ......
炎热的天气依旧持续,掐指算来,到北京刚好两月了,每天都投入到充实的学习中,
感觉良好,不过昨天上课竟然睡觉,而且晚上还看了电影。。。。。要保持警惕,放松
但是不能太放松!!!!
培训的时间毕竟很短,错过了这几个月,以后估计就很少能静下心来学习了,要珍惜,
要努力,GOGO!!
JSP异常处理方式:
第 ......
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servle ......
public class TaskBean extends Thread{
public TaskBean(){
}
private int percent=0;
private boolean complete=false;
public synchronized&nb ......