java servlet的问题

来源:百度知道 编辑:UC知道 时间:2024/06/30 04:17:36
//先设置Header,在这里只设置ContentType一项
response.setContentType("text/html; charset=gb2312");
request.setCharacterEncoding("GB2312");

这是servlet的一部分 哪位大侠能给我解释下这是什么意思啊 什么是header 设置这个有什么用啊 上面说只设置了一项 那还可以设置什么啊 都是什么意思 谢谢各位

其实这就是在返回和传送页面的时候设置页面所用的类型 比如说GB2312 就是说这个JSP页面支持中文
其实response.setContentType("text/html; charset=gb2312");
一般不需要设置,一般都在<%@ page language="java" contentType="text/html; charset=GB2312"里面设置

ContentType 属性指定响应的 HTTP 内容类型。如果未指定 ContentType,默认为 text/HTML。
response.setContentType("text/html; charset=gb2312");
这是服务器返回给客户端的内容类型是text/html 字符集是gb2312的
request.setCharacterEncoding("GB2312");
这是客户端的请求的字符集设置
这两个要设置成一样的主要是用来解决中文乱码问题的

在Servlet中,会首先设置请求以及响应的内容类型以及编码方式:
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8");
其作用是为了解决乱码问题。还可以设置:gb18030, UTF-8等

response.setContentType("text/html; charset=gb2312")这句话相当于
<%@ page contentType="text/html;charset=gb2312" %>,这是返回的时候的内容类型和编程格式。一般返的时候都是这样的。如果是文件上传,下载的时候,你发现差别的。 request.setCharacterEncoding("GB2312");就是也是设置你接收的字符串的编码方式。能设