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() 获取全部的请求头名字


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值