response.setStatus(404);
发送错误信息
response.sendError(500,"error");
设置状态码300-399,重定向,请求资源不存在,再次请求到另外的资源
response.setStatus(302);
设置302状态码后可以跳转其他页面
response.setHeader("Location","跳转的页面地址");
设置响应内容的类型,MIME类型
什么的MIME类型
告诉浏览器,服务器发送回去的数据类型是什么,客户端启动相应的应用程序来处理响应内容
response.setContentType("text/html");
通过响应头设置MIME类型,charset=utf-8表示浏览器在解析内容,采用utf-8的格式,
类似于 <meta charset=utf-8>
response.setHeader("Content-Type", "text/html;charset=utf-8");
//输出中文到浏览器
//设置内容在传输过程中编码格式是utf-8
response.setCharacterEcording("utf-8");
自动刷新功能
response.setHeader("refresh", "5;index.jsp");
System.out.println("刷新");
控制数据无法缓存
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
设置过期时间
response.setDateHeader("Expires", System.currentTimeMillis()+24*3600*1000);
设置响应消息体
//tomcat默认响应回客户端解析的时候编码集是ISO8859-1
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.print("Ok");
out.write("123");
//print和write方法区别:
//共同点:两者都不会刷新页面,只在原来的页面上写数据。两个方法都是重写了Writer类里面的write方法
//不同点:print可以将各种不同的数据转换为字符串内容输出,write只能操作,字符,字符数组,字符串。
重定向
- 重定向的状态码是302.表示资源被移走,重新请求新的资源。
- 重定向是客户端发起的两次请求。
- 调用sendRedirect方法可以不用设置状态码。
使用Servlet处理HTTP请求
#### get方法提交(用于获取到服务器中的资源)
- 地址栏直接输入服务器资源
- 通过Js直接访问
- 超链接访问
post提交主要是用来传输数据。客户端向服务器发送数据一般用post. 文本,二进制数据。
何时使用GET/POST方法:
- 请求一个静态网页或者图形文件时使用GET方法,因为仅仅需要发送文件名;
- 发送发数据的时候,使用POST方法;
- 上传文件时,使用POST方法;
- 发送用户名、密码或者其他保密信息时使用POST方法。