HttpServletRequest对象

HttpServletRequest:请求消息对象,一次请求信息
分为三部分:
1、请求行
a、请求方式
b、请求资源路径URL
c、协议版本号
2、请求头
3、请求实体

package com.zhouym.project;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		this.doPost(request, response);
	}
	public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		getInfo(request, response);

	}
	private void getInfo(HttpServletRequest request, HttpServletResponse response) {
		// 请求行
		try {
			// 获取请求方式
			getRequestLine(request, response);
		} catch (Exception e) {
			e.printStackTrace();
		}
		// 获取请求资源
		getRequestURL(request, response);
		// 获取请求协议版本号
		getRequestProtocolVersion(request, response);
		//获取请求头信息
		getHeaders(request, response);
		//获取请求实体
		getRequestBody(request, response);
		//获取网络信息
		getRequestInternet(request, response);
	}
	private void getRequestLine(HttpServletRequest request, HttpServletResponse response) throws Exception {
			String method = request.getMethod();
			System.out.println(method);
	
		}
	private void getRequestURL(HttpServletRequest request, HttpServletResponse response) {
			String uri = request.getRequestURI();//统一资源标识符
			StringBuffer url = request.getRequestURL();//同一资源定位符
			System.out.println(uri);
			System.out.println(url);
			
			
		}

	private void getRequestProtocolVersion(HttpServletRequest request, HttpServletResponse response) {
		String protocol = request.getProtocol();//协议+版本
		System.out.println(protocol);
		String scheme = request.getScheme();
		System.out.println(scheme);//协议
	}

	private void getHeaders(HttpServletRequest request, HttpServletResponse response) {
		Enumeration<String> headerNames = request.getHeaderNames();//获取所有请求头信息的key值
		while (headerNames.hasMoreElements()) {
			String s = (String) headerNames.nextElement();
			System.out.println(s);
						
		}
		System.out.println("-------------分割线-------------");
		String header = request.getHeader("user-agent");
		System.out.println(header);
		String h = request.getHeader("accept-language");
		System.out.println(h);
		
	}

	private void getRequestBody(HttpServletRequest request, HttpServletResponse response) {
		String username = request.getParameter("username");
		System.out.println(username);
		String pwd = request.getParameter("pwd");
		System.out.println(pwd);
		
	}

	private void getRequestInternet(HttpServletRequest request, HttpServletResponse response) {
		String addr = request.getRemoteAddr();
		System.out.println(addr);
		int port = request.getRemotePort();
		System.out.println(port);
		
	}

响应消息分为三部分:
1、状态行
a、协议版本 b、状态码 c、状态描述信息
2、应答头
3、响应实体

状态行、响应实体与请求对象类似,不做介绍了

//应答头
private static void getResponseInfo(HttpServletRequest request, HttpServletResponse response) throws Exception {
		response.setContentType("text/html;charset=utf-8");
		PrintWriter out = response.getWriter();
		out.write("<p>你好</p>");
		
	}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值