Java EE中的response

什么是response

  1. response对象是由服务器创建的,我们来进行使用.
  2. response对象是用来设置响应消息的

功能: 设置响应消息

	1. 设置响应行
		1. 格式: HTTP/1.1 200	ok
		2. 设置状态码: setStatus(int sc);
	
	2. 设置响应头: setHeader(String name, String value);

	3. 设置响应体:
		* 使用步骤:
			1. 获取输出流
				* 字符输出流: PrintWriter getWriter()

				* 字节输出流: ServletOutputStream getOutputStream()

			2. 使用输出流,将数据输出到客户端浏览器

	4. 重定向
		方法一:
			* 步骤: 
				1. 设置状态码为302
					* response.setStatus(302)
					
				2. 设置响应头: redirect
					* response.setHeader("域名(ip地址)", "重定向的地址(路径)");
					* 自己测试的话可以用localhost

		方法二:
			* 这种比较方便
			* response.sendRedirect("重定向的地址(路径)");


		* 路径写法:
			1. 路径的分类
				1. 相对路径: 通过相对路径不可以确定唯一资源
					* 如: ./index.html
						* 不以/开头, 以.开头

						* 规则: 找到访问的当前资源和目标资源之间的相对位置关系
							* ./当前目录
							* ../后退一级目录
						
				2. 绝对路径: 通过绝对路径可以确定唯一资源
					* 如: http://localhost/text/responseDemo2
					*  以斜杠开头的路径
				
					* 规则: 判断定义的路径是给谁用的? 判断请求将来从哪儿发出
						* 给客户端浏览器使用: 需要假虚拟目录(项目的访问路径)
							* 建议虚拟目录动态获取: request.getContextPath()
							* <a>, <form>, 重定向....
								
						* 给服务器使用: 不需要加虚拟目录
							* 转发路径

	


		3. 服务器输出字节数据到浏览器
			* 步骤:
				1. 获取字节输出流
				2. 输出数据

服务器输出字符数据到浏览器

	* 步骤:
		1. 获取字符输出流
		2. 输出数据

	* 注意:
		* 乱码问题:
			1. PrintWriter pw = response.getWriter(); 获取流的默认编码是ISO-8859-1
			2. 设置该流的编码
			3. 告诉浏览器响应体使用的编码
				
			//简单形式, 设置编码,是在获取流之前设置
			response.setContentType("text/html;charser=utf-8");

服务器输出字节数据到浏览器

	* 步骤:
		1. 获取字节输出流
		2. 输出数据
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章