Request
getContextPath():
这个方法返回的是文本引用映射的虚拟目录地址:
如http://localhost:8080/dmsd-itoo-exam-log-web/course/index.jsp,工程名为/dmsd-itoo-exam-log-web为例:
request.getContextPath(),得到工程名:/dmsd-itoo-exam-log-web;
request.getServletPath(),返回当前页面所在目录下全名称:/course/index.jsp;
request.getRequestURL(),返回IE地址栏地址:http://localhost:8080/dmsd-itoo-exam-log- web/course/index.jsp;
getHeader(String name)/getIntheader(String name)/getDateHeader(String name):获取请求头中的信息,只是针对不 同类型的。
getHeaderNamse(): 获取所有请求头的字段名称
getHeaderNamse():获取一个请求头字段的所有值,因为有时候可坑会有相同的请求头字段信息,不会覆盖
getMethod():获取客户机的请求方法
getQueryString():获取用户请求时查询的参数的,即url后面携带的参数,如:
http://localhost:8080/ServletDemo/ServletRequest?username=jiangwei&password=123456,
那么getQueryString()方法返回来的值就是username=jiangwei&password=123456
getRequestSessionId():获取客户机在请求的时候携带的sessionid值
getRequestURL():获取客户机请求的url
getServletPath():返回的是请求的Servlet的映射路径,比如:ServletRequest映射的是 /ServletRequest
getServerNAme()/getServerPort()获取服务器的名称和端口,比如:localhost,80
getSession()/getSession(boolean mode)获取一个session对象
getAttribute(String name)这个方法的是从Request中获取值
getAttributeNames()获取Request域中获取所有的字段名称
getParameter(String name)获取用户使用get/post方式携带的参数值
getParamterNames()获取用户请求时携带的所有参数的名称
getParameterMap()获取用户请求时携带参数名称和参数值,并将其组装成一个Map对象
getParameterValues():这个方法是获取用户请求携带的参数值,因为有时候一个参数名称可能对应多个值
setAttribute(String name,Object value):这个方法是设置Request域中的属性值
removeAttribute(String name):这个方法是删除Request域中的属性值
getInputStream()/getReader():这个方法是获取用户请求的时候上传的输入流,比如我们在处理用户上传文件的时候。需要用到这 个输入流
setCharacterEncoding(String name):这个方法是设置Request容器的编码
getRemoteAddr()/getRemoteHost():获取客户机的IP地址和主机名
getProctocol():获取协议名称
getRequestDispatcher(String path):获取一个转发对象RequestDispatcher,进行转发操作
Reponse
addCookie(Cookie cookie):这个方法是向Response容器中添加一个Cookie,然后服务器容器会自动的将这个Cookie回写给客户机的
addDateHeader(String name ,long date):这个是向客户机添加一个时间值属性的响应头信息
addHeader(String name,String value):这个是向客户机添加一个字符串值属性的响应头信息,比如重定向的响应头location
addIntHeader(Int name ,int value):这个是向客户机添加一个数字属性的响应头信息
containsHeader(String name):这个方法是判断是否含有这个响应头信息字段
encodeURL(String name):这个方法是用于url改写的功能的,这个和session有关
setHeader(String name,String value)/setIntHeader(String name,int value)/setDateHeader(String name,long date):
这些方法和addHeader方法是相对应的,唯一和addHeader不同的是,addHeader是向Response中添加一个响应头信息,而setHeader是修改一个响应头信息的。
setStatus(int value):通过这个方法是设置响应码的,比如:200,304,404等。
getOutputStream():通过这个方法可以拿到一个字节流,然后可以向Response容器中写入字节数据,最后客户机向Response容器中拿去数据进行显示
getWriter():通过这个方法可以拿到一个字符流(PrintWriter),然后可以向Response容器中写入字符数据,最后客户机向Response容器中拿去数据进行显示
setContentLength():通过这个方法设置服务器向用户返回的数据长度
setContentType():方法可以直接设置响应头content-type的内容