HttpServletRequest接口
package com.hongdian; import java.util.Enumeration;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; /**
*
* @author yjmao
* @描述 HttpServletRequest接口学习
* @继承于 ServletRequest
*/
@WebServlet(name = "SpanningTreeServlet", urlPatterns = {"/SpanningTreeServlet.html"})
public class HttpServletRequestLearn extends HttpServlet { @Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//authType(request);
//getContextPath(request);
//getCookies(request);
//getDateHeader(request);
//getHeader(request);
//getHeaderNames(request);
//getHeaders(request);
//getIntHeader(request);
//getMethod(request);
//getPathInfo(request);
//getPathTranslated(request);
//getQueryString(request);
//getRemoteUser(request);
//getRequestedSessionId(request);
//getRequestURI(request);
//getRequestURL(request);
//getServletPath(request);
//getSession(request);
//getSessionBollean(request);
//getUserPrincipal(request);
//isRequestedSessionIdFromCookie(request);
//isRequestedSessionIdFromUrl(request)
//isRequestedSessionIdFromURL(request);
//isRequestedSessionIdValid(request) ;
//isUserInRole(request);
System.err.println("GET进来啦!");
} /*
* isRequestedSessionIdFromURL():返回一个布尔值,表示经过身份验证的用户是否包含在指定的逻辑“角色”。
*
*/
public static void isUserInRole(HttpServletRequest request) {
Boolean isUserInRole = request.isUserInRole("mao");
System.out.println("isUserInRole = " + isUserInRole);
}
/*
* isRequestedSessionIdFromURL():检查请求的会话ID是否仍然有效。
*
*/
public static void isRequestedSessionIdValid(HttpServletRequest request) {
Boolean isRequestedSessionIdValid = request.isRequestedSessionIdValid();
System.out.println("isRequestedSessionIdValid = " + isRequestedSessionIdValid);
}
/*
* isRequestedSessionIdFromURL():检查请求的会话ID来作为请求URL的一部分。
*
*/
public static void isRequestedSessionIdFromURL(HttpServletRequest request) {
Boolean isRequestedSessionIdFromURL = request.isRequestedSessionIdFromURL();
System.out.println("isRequestedSessionIdFromURL = " + isRequestedSessionIdFromURL);
}
/*
* isRequestedSessionIdFromCookie():检查请求的会话ID作为一个cookie。
*
*/
public static void isRequestedSessionIdFromCookie(HttpServletRequest request) {
Boolean isRequestedSessionIdFromCookie = request.isRequestedSessionIdFromCookie();
System.out.println("isRequestedSessionIdFromCookie = " + isRequestedSessionIdFromCookie);
}
/*
* getSession():返回与此请求关联的HttpSession中,如果没有当前会话,并创建是真实的,则返回一个新的会话。
*
*/
public static void getSessionBollean(HttpServletRequest request) {
HttpSession getSession = request.getSession(true);
String getId = getSession.getId();
System.out.println("getId = " + getId);
} /*
* getSession():返回与此请求关联的当前会话,或者如果请求没有会话,创建一个。
*
*/
public static void getSession(HttpServletRequest request) {
HttpSession getSession = request.getSession();
String getId = getSession.getId();
System.out.println("getId = " + getId);
} /*
* getServletPath():返回调用servlet的请求的URL的一部分。
* 如:/SpanningTreeServlet.html
*/
public static void getServletPath(HttpServletRequest request) {
String getServletPath = request.getServletPath();
System.out.println("getServletPath = " + getServletPath);
} /*
* getRequestURL():重建的要求,使客户端使用的URL。
* 如:http://localhost:8088/LargeAmountOfDataSpanningTree/SpanningTreeServlet.html
*/
public static void getRequestURL(HttpServletRequest request) {
StringBuffer getRequestURL = request.getRequestURL();
System.out.println("getRequestURL = " + getRequestURL.toString());
} /*
* getRequestURI():返回此请求的URL的一部分从HTTP请求中的第一行中的查询字符串的协议名称。
* 如:/LargeAmountOfDataSpanningTree/SpanningTreeServlet.html
*/
public static void getRequestURI(HttpServletRequest request) {
String getRequestURI = request.getRequestURI();
System.out.println("getRequestURI = " + getRequestURI);
} /*
* getRequestedSessionId():返回指定的客户端的会话ID。
*
*/
public static void getRequestedSessionId(HttpServletRequest request) {
String getRequestedSessionId = request.getRequestedSessionId();
System.out.println("getRequestedSessionId = " + getRequestedSessionId);
} /*
* getMethod():返回这个请求的HTTP方法的名称,例如,GET,POST或PUT。
*
*/
public static void getMethod(HttpServletRequest request) {
String getMethod = request.getMethod();
System.out.println("getMethod = " + getMethod);
} /*
* getIntHeader(String name):返回指定的请求头为一个int值。
* 参数name:请求头中的参数
* 不是很懂
*/
public static void getIntHeader(HttpServletRequest request) {
int enums = request.getIntHeader("mm");
System.out.println("enums = " + enums);
} /*
* getHeaders(String name):返回一个String对象的枚举指定的请求标头的所有值。
* 参数name:请求头中的参数
*/
public static void getHeaders(HttpServletRequest request) {
Enumeration enums = request.getHeaders("Accept-Charset");
while (enums.hasMoreElements()) {
System.out.println("******head=" + enums.nextElement() + "************");
}
} /*
* getHeaderNames():返回一个枚举这个请求包含所有的头名。
*
*/
public static void getHeaderNames(HttpServletRequest request) {
Enumeration enums = request.getHeaderNames();
String str = null;
while (enums.hasMoreElements()) {
str = enums.nextElement().toString();
System.out.print(str + ":");
System.out.println(request.getHeader(str));
Enumeration a = request.getHeaders(str);
while (a.hasMoreElements()) {
System.out.println("******head=" + a.nextElement() + "************");
}
}
} /*
* getHeader(String name):返回值作为一个String指定的请求头。
* 参数name:请求头中的参数,
* 如:
Accept-Charset:GBK,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:zh-CN,zh;q=0.8
Connection:keep-alive
Cookie:JSESSIONID=461DB37360713AFBFB9E0B50FF716191
Host:localhost:8088
Referer:http://localhost:8088/LargeAmountOfDataSpanningTree/
User-Agent:Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11
X-Requested-With:XMLHttpRequest
*/
public static void getHeader(HttpServletRequest request) {
String getHeader = request.getHeader("Accept-Charset");
System.err.println("getHeader = " + getHeader);
String Host = request.getHeader("Host");
System.err.println("Host = " + Host);
} /*
* getCookies():返回一个数组,包含所有客户端发送申请的Cookie对象。
*
*/
public static void getCookies(HttpServletRequest request) {
Cookie[] getCookies = request.getCookies();
int i = ;
for (Cookie cook : getCookies) {
i++;
System.err.println("第" + i + "个cook = " + cook.getName() + ";value = " + cook.getValue());
}
} /*
* getContextPath():指示上下文请求的URI
* 如http://localhost:8088/LargeAmountOfDataSpanningTree/
* 返回的就是/LargeAmountOfDataSpanningTree
*/
public static void getContextPath(HttpServletRequest request) {
String getContextPath = request.getContextPath();
System.err.println("getContextPath = " + getContextPath);
} /*
* authType():返回的身份验证方案,用于保护的servlet的名称。
*/
public static void authType(HttpServletRequest request) {
String authType = request.getAuthType();
System.err.println("authType = " + authType);
} /**
* ***************************不是很清楚怎么样的***********************************************
*/
/*
* getUserPrincipal():返回一个java.security.Principal对象,它包含当前经过身份验证的用户的名称。
*
*/
public static void getUserPrincipal(HttpServletRequest request) {
java.security.Principal pp = request.getUserPrincipal();
System.err.println("pp = " + pp);
} /*
* isRequestedSessionIdFromCookie():检查请求的会话ID作为一个cookie。
* 方法已经过时
*/
public static void isRequestedSessionIdFromUrl(HttpServletRequest request) {
Boolean isRequestedSessionIdFromUrl = request.isRequestedSessionIdFromUrl();
System.out.println("isRequestedSessionIdFromUrl = " + isRequestedSessionIdFromUrl);
} /*
* getPathTranslated():提出这个要求时,客户端发送的URL返回任何额外的路径信息。
*
*/
public static void getPathTranslated(HttpServletRequest request) {
String getPathTranslated = request.getPathTranslated();
System.out.println("getPathTranslated = " + getPathTranslated);
} /*
* getPathInfo():提出这个要求时,客户端发送的URL返回任何额外的路径信息。
*
*/
public static void getPathInfo(HttpServletRequest request) {
String getPathInfo = request.getPathInfo();
System.out.println("getPathInfo = " + getPathInfo);
}
/*
* getQueryString():返回的查询字符串中包含请求的URL路径后。
*
*/ public static void getQueryString(HttpServletRequest request) {
String getQueryString = request.getQueryString();
System.out.println("getQueryString = " + getQueryString);
} /*
* getRemoteUser():提出这个要求返回登录的用户,如果用户已通过身份验证,或者如果用户未通过身份验证,则返回null。
*
*/
public static void getRemoteUser(HttpServletRequest request) {
String getRemoteUser = request.getRemoteUser();
System.out.println("getRemoteUser = " + getRemoteUser);
}
/*
* getDateHeader(String name):返回指定的请求头作为一项长期的价值,代表一个日期对象的价值。
* 注明:不是很懂
*/ public static void getDateHeader(HttpServletRequest request) {
long tie = request.getDateHeader("mm");
System.err.println("tie = " + tie);
} @Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//authType(request);
getMethod(request);
System.err.println("Put进来啦!");
}
}
HttpServletRequest接口的更多相关文章
- HttpServletRequest接口实例化的使用
HttpServletRequ接口的使用和jsp内置对象的request对象非常类似,request对象其实 就是HttpServletRequest接口的一个实例,不过气实例化的过程是自动的,无须自 ...
- HttpServletRequest 接口、HttpServletResponse 接口、请求转发与重定向
上篇文章我们讲了servlet的基本原理,这章将讲一下剩余的部分. HttpServletRequest 接口 该接口是 ServletRequest 接口的子接口,封装了 HTTP 请求的相关信息, ...
- Servlet(6)—HttpServletRequest接口和HttpServletResponse接口
HttpServletRequest接口和HttpServletResponse接口是继承ServletRequest和ServletResponse接口,是他们的子接口,但是我们在程序中进程看到Se ...
- 一、HttpServletRequest接口 二、HttpServletReponse接口 三、POST和GET请求方式及其乱码处理 四、ServletContext对象和ServletConfig对象
一.HttpServletRequest接口 内部封装了客户端请求的数据信息 接收客户端的请求参数.HTTP请求数据包中配置参数 ###<1>常用方法 getContextPath()重要 ...
- javax.servlet.http.httpServletRequest接口
HttpServletRequest接口中常用的方法: - String getContentPath();//获取webapp根目录路径,如下图: 下面研究request到底是一个怎样的范围 ...
- HttpServletRequest接口是怎么实现的
request只是规范中的一个名称而已.不是SUN提供的,这是由各个不同的Servlet提供商编写的,SUN只是规定这个类要实现HttpServletRequest接口,并且规定了各个方法的用途,但具 ...
- HttpServletRequest接口详解
般情况下,浏览器(客户端)通过 HTTP 协议来访问服务器的资源,Servlet 主要用来处理 HTTP 请求.Servlet 处理 HTTP 请求的流程如下: Servlet 容器接收到来自客户端的 ...
- [转]【HttpServlet】HttpServletRequest接口
建立时间:2019.6.28 &6.29 1.HttpServletRequest概述 我们在创建Servlet时会覆盖service()方法,或doGet()/doPost(),这些方法都有 ...
- Java EE HttpServletRequest接口和HttpServletResponse接口
package javax.servlet.http (https://docs.oracle.com/javaee/7/api/javax/servlet/http/package-summary. ...
随机推荐
- Jprofiler分析WebSphere(配置WebSphereagent代理)
一. Windows+WebSphere+Jprofiler9 我们自己的windows机器监控本地的WebSphere,应该为服务器配置监控代理,供Jprofiler连接使用,具体步骤如下: 1 ...
- hdu 1853 Cyclic Tour (二分匹配KM最小权值 或 最小费用最大流)
Cyclic Tour Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/65535 K (Java/Others)Total ...
- [洛谷P2824][HEOI2016/TJOI2016]排序
题目大意:一个全排列,两种操作: 1. $0\;l\;r:$把$[l,r]$升序排序2. $1\;l\;r:$把$[l,r]$降序排序 最后询问第$k$位是什么 题解:二分答案,把比这个数大的赋成$1 ...
- CentOS 7, 升级python到3.x
By francis_hao Apr 11,2017 使用源码安装方式 首先到官网https://www.python.org/downloads/source/ 下载python最新版本.当前 ...
- Codeforces ----- Kefa and Dishes [状压dp]
题目传送门:580D 题目大意:给你n道菜以及每道菜一个权值,k个条件,即第y道菜在第x道后马上吃有z的附加值,求从中取m道菜的最大权值 看到这道题,我们会想到去枚举,但是很显然这是会超时的,再一看数 ...
- java的多构造函数的处理方式
/** * */ package P; import java.awt.List; import java.lang.reflect.Array; import java.util.ArrayList ...
- java的GC与内存泄漏
从诞生至今,20多年过去,Java至今仍是使用最为广泛的语言.这仰赖于Java提供的各种技术和特性,让开发人员能优雅的编写高效的程序.今天我们就来说说Java的一项基本但非常重要的技术内存管理 了解C ...
- bzoj 4555 [Tjoi2016&Heoi2016]求和 NTT 第二类斯特林数 等比数列求和优化
[Tjoi2016&Heoi2016]求和 Time Limit: 40 Sec Memory Limit: 128 MBSubmit: 679 Solved: 534[Submit][S ...
- 修改select样式,vue select
<style> .selectbox{ width: 200px; display: inline-block; overflow-x: hidden; height: 28px; lin ...
- C# 程序Hello World
先创建一个工程文件->选择的是console application. 然后开始写代码如下: using System; using System.Collections.Generic; us ...