其他分享
首页 > 其他分享> > HttpServletResponse和HttpServletRequest中的一些方法

HttpServletResponse和HttpServletRequest中的一些方法

作者:互联网

responce的一些方法

HttpServletResponse 简称Response 其父类型是 ServletResponse 

1. Response用于处理服务器到客户端的响应, 其内部有一个缓冲, 用来保存响应信息. 
2. ServletResponse 是父类型, 提供的方法没有 HttpServletResponse 多, 使用没有HttpServletResponse方便. 所以 HttpServletResponse 使用更多.
3. request提供的API用来处理向客户端发送的响应信息:
   1. res.setStatus(200) 设置状态码, 也就是设置状态行
   2. res.setContentType设置Content-Type响应头, 用来通知浏览器采用何种方式处理 响应Body.
   3. res.setContentLength 设置 Content-Length 响应头
   4. res.getOutputStream().write() 设置响应消息正文Body
   5. res.getPrintWriter() 获得设置了编码的输出流, 调用之前必须使用setContentType设置编码.
   6. res.setHeader() 设置自定义的响应头

resquest的一些方法

/由于getMethod方法是HttpServletRequest对象的方法
		//所以需要将ServletRequest对象强制转型才能调用
		HttpServletRequest req=
				(HttpServletRequest)request;
		//获取请求行中的请求方式(GET/POST) 
		String method=req.getMethod();
		//获取请求行中的 URI
		String uri = req.getRequestURI();
		//获取请求行中的HTTP版本
		String http = req.getProtocol();
		System.out.println(method+" "+uri+" "+http);

		

	//获取请求头中的信息	
	String host=req.getHeader("Host");
	String ua=req.getHeader("User-Agent");
	System.out.println(host);
	System.out.println(ua);
	//获取全部的请求头信息:
	//Enumeration 与 Iterator 功能相同 
	Enumeration<String> em=req.getHeaderNames();
	//em.hasMoreElements() 与 it.hasNext() 相同	
	//em.nextElement();    与 it.next() 相同
	while(em.hasMoreElements()) {
		String name=em.nextElement();
		System.out.println(
				name+":"+req.getHeader(name));
	}
	
	response.setContentType("text/html");
	response.getWriter().println("OK");

1. request 对象在Tomcat收到用户请求时候创建, 其内部封装的全部的用户浏览器请求信息. 
2. ServletRequest类型定义的方法少, 转换为HttpServletRequest方法更多, 使用更加方便. 
3. request对象提供了API方法, 利用这些方法可以读取用户浏览器请求的请求信息.
   1. req.getMethod() 读取请求行中的请求方式信息 GET/POST 等
   2. req.getRequestURI() 获取请求行中的 URI
   3. req.getProtocol() 获取请求行中的HTTP版本
   4. req.getHeader(请求头名) 获取请求头信息
   5. req.getHeaderNames() 获取全部的请求头名字


标签:HttpServletRequest,行中,String,res,req,HttpServletResponse,获取,方法,请求
来源: https://blog.csdn.net/abaidaye/article/details/113794200