一、静态资源
静态资源是我们的前端显示内容,包括HTML、css、Js等。
在静态Web程序中,客户端使用Web浏览器(IE、FireFox等)经过网络(Network)连接到服务器上,使用HTTP协议发起一个请求(Request),告诉服务器我现在需要得到哪个页面,所有的请求交给Web服务器,之后WEB服务器根据用户的需要,从文件系统(存放了所有静态页面的磁盘)取出内容。之后通过Web服务器返回给客户端,客户端接收到内容之后经过浏览器渲染解析,得到显示的效果。
二、实现
response.setContentType(MIME)的作用是使客户端浏览器,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据。
Tomcat的安装目录\conf\web.xml 中就定义了大量MIME类型
text/html; charset=utf-8; html
text/plain; charset=utf-8; 文本
text/javascript json数据
application/xml xml数据
这个方法设置发送到客户端的响应的内容类型,此时响应还没有提交。给出的内容类型可以包括字符编码说明。
例 如:text/html;charset=UTF-8.如果该方法在getWriter()方法被调用之前调用,那么响应的字符编码将仅从给出的内容类型 中设置。
该方法如果在getWriter()方法被调用之后或者在被提交之后调用,将不会设置响应的字符编码,在使用http协议的情况中,该方法设 置 Content-type实体报头。
比如我们新建一个servlet使用 response.setContentType解析静态资源
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
String demo="<!DOCTYPE html>\r\n" +
"<html>\r\n" +
"<head>\r\n" +
"<meta charset=\"utf-8\">\r\n" +
"<title>测试(runoob.com)</title>\r\n" +
"</head>\r\n" +
"<body>\r\n" +
"\r\n" +
"<h1>解析静态资源</h1>\r\n" +
"<p>demo测试。</p>\r\n" +
"\r\n" +
"</body>\r\n" +
"</html>";
response.getWriter().write(demo);
}
之后读取静态资源并解析为相应字符串,浏览器会自动根据编码去解析成我们要的数据,