#1.Request

package com.tcb.servlet;import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/*** 目的:总结HttpRequest中常用的方法*/
public class Servlet01Request extends HttpServlet {private static final long serialVersionUID = 1L;public Servlet01Request() {super();// TODO Auto-generated constructor stub}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//一、路径问题://1.上下文路径: /TCB-Request01           当前项目目录(重要的)String contextPath=request.getContextPath();System.out.println("======contextPath======="+contextPath);//2.uri--统一资源标识符:  /TCB-Request01/Servlet01  服务器上的路径String uri=request.getRequestURI();System.out.println("======uri======="+uri);//3.url--统一资源定位符:  http://localhost:8080/TCB-Request01/Servlet01String url=request.getRequestURL().toString();System.out.println("======url======="+url);////统一资源标识符=http://localhost/资源标识符//访问的地址:统一资源定位符//二、提交方式--GET/POST    默认是GET方式,此处运行结果为GETString method=request.getMethod();System.out.println("======method======="+method);//三、服务器内部--根据需求设置要传的值,并在其他页面根据Request获取值--利用的Request是域对象的特性,进行页面见传值//注意:区别于Parameterrequest.setAttribute("key", "value");request.getAttribute("");//根据名称获取指定传的值request.getAttributeNames();//获取所有的传值的名称//四、客户端--获取客户端传来的参数Parameter--比如get方式中地址栏问号?后的username=Jane&password=123//1.根据指定参数名称获取值request.getParameter("");//值为单个时request.getParameterValues("");//值为多个时,返回值为数组--比如爱好hobby,一个参数名下对应多个值//2.获取所有参数名称request.getParameterNames();//3.获取所有参数,并一键值对(key=value)的形式存在map集合中request.getParameterMap();//五、获得Cookie和sessionrequest.getCookies();request.getSession();request.getRequestedSessionId();//获取session的id,每个session都会在客户端生成一个唯一的id//六、设置编码方式request.setCharacterEncoding("utf-8");//七、转发--地址栏不变,请求一次request.getRequestDispatcher("要跳转到的页面地址").forward(request, response);request.getRequestDispatcher("要跳转到的页面地址").include(request, response);//包含,功能与forward类似,不常用}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}

#2.Response

package com.tcb.servlet;import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/*** 目的:总结HttpResponse中常用的方法*/
public class Servlet02Response extends HttpServlet {private static final long serialVersionUID = 1L;public Servlet02Response() {super();// TODO Auto-generated constructor stub}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//一、设置编码--当然也可以获取编码方式,不常用就不一一列出了//设置响应输出的编码方式,不常用,一般用下面那个response.setCharacterEncoding("utf-8");//告诉浏览器输出的文本是html,让浏览器按照html方式进行解析,并且HTML的文件的编码格式是utf-8//因为在进行输出时可以写html标签,若没有设置为如下格式,就不能解析html标签//比如:response.getWriter().write("<a href='http://www.baidu.com' >百度<a/>");response.setContentType("text/html;charset=utf-8");//二、输出流response.getWriter();//字符流response.getOutputStream();//字节流//三、添加CookieCookie cookie=new Cookie("username", "用户名");response.addCookie(cookie);//四、设置请求头--常用于文件下载response.setHeader("content-type", "image/png");//设置请求头内容类型,为png类型图片//content-disposition内容配置//attachment代表附件的意思  保存下载内容response.setHeader("content-disposition", "attachment;filename="+"文件名称,带扩展名");//setHeader实现刷新//3s后刷新,只刷新一次--其中3指代时间                          所以setHeader也可以实现页面跳转response.setHeader("refresh", "3;url=刷新跳转的页面地址,可以是jsp,HTML,Servlet等");response.setIntHeader("refresh", 3);//目的:循环是刷新,每隔3s去刷新//五、重定向--地址栏变化,请求两次response.sendRedirect("要跳转到的页面地址,一般用绝对路径");}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}

#3.Cookie

package com.tcb.servlet;import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/*** 目的:总结Cookie中常用的方法*/
public class Servlet03Cookie extends HttpServlet {private static final long serialVersionUID = 1L;public Servlet03Cookie() {super();// TODO Auto-generated constructor stub}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//获取Cookierequest.getCookies();//创建和添加CookieCookie cookie=new Cookie("", "");//参数1:参数名   参数2:参数值response.addCookie(cookie);//设置Cookie有效时间和路径cookie.setMaxAge(0);//设置Cookie有效时间,单位是秒     值为0时,表示Cookie失效(默认)   cookie.setPath("uri,路径");//设置Cookie路径//获取Cookie的值和名以及当前路径cookie.getName();cookie.getValue();cookie.getPath();}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}

#4.Session

package com.tcb.servlet;import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;/*** 目的:总结Session中常用的方法*/
public class Servlet04Session extends HttpServlet {private static final long serialVersionUID = 1L;public Servlet04Session() {super();// TODO Auto-generated constructor stub}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//创建sessionHttpSession session=request.getSession();//给session赋值以及获取值--参数1:参数名  参数2:参数值session.setAttribute("key", "value");session.getAttribute("");//根据传值的名称获取值session.getAttributeNames();//获取session中存的所有值的名称//设置session有效时间,单位秒session.setMaxInactiveInterval(5);}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}

【Servlet】Request/Response/Cookie/Session中常用方法相关推荐

  1. 注意语句顺序 防止Servlet Request Response乱码

    今天在项目中.想在控制层,用response来输出中文.发现有乱码. 本来代码是 PrintWriter out = response.getWriter(); response.setContent ...

  2. JSP中response,session,cookie,application的作用及区别

    目录 1.response :响应对象 2.session(服务端) 3.使用Cookie实现 记住用户名 功能 4.session :会话 5.session机制: 6.session: 7.ses ...

  3. Servlet ---- cookie session

    Cookie 属性 和 构造 Cookie的添加 和 获取 记录最后访问时间 @WebServlet(name = "ServletDemo25", value = "/ ...

  4. 用户登录(记住用户)用户注册(验证码) [运用Cookie Session技术]

    需求如下: (相比以前的登陆注册添加的新功能如下框) 一.用户登录:(要求如下图) 用户登录总代码结构如下: User实体类: package com.itheima.pojo;public clas ...

  5. 大数据WEB阶段(九)Servlet+Request

    Servlet与Request 一.概述 Servlet 是sun公司提供的一门用于开发动态web资源的技术 按照这套规范写出来的servlet可以放置在web应用中在servlet容器中运行 . 开 ...

  6. JavaWeb - Request Response

    Request & Response 1,Request和Response的概述 为什么运行项目后默认打开index.html - 是因为 tomcat 配置文件中事先配好了 ==Reques ...

  7. Struts2中action获取request、response、session的方式

    2019独角兽企业重金招聘Python工程师标准>>> 第一种方式,非IoC(Spring中的控制反转)方式: package com.action; import java.uti ...

  8. Struts2.x中获取request,response,session的方式

    Struts2.x中获取request,response,session的方式有两种:非IOC方式和IOC方式: 一:非IOC方式: 要获得request,response,session 这些对象, ...

  9. 如何使 FlashGet 正常合法 下载 Session 中的自定义文件链接呢? JSP/Servlet 实现!

    <% //============================================================================================ ...

最新文章

  1. qt 一定要指定大小吗 数组_Qt中数组的初始化 | 学步园
  2. Datagridview 在基于文本的单元格中启用换行,自动调整行高列宽
  3. bzoj1038 [ZJOI2008]瞭望塔
  4. apache2 的https配置和代理https后端nodejs配置
  5. python之路day14--列表生成式、生成器generator、生成器并行
  6. arm linux gif 显示_100ASK_IMX6ULL arm板子如何显示图片、汉字、划线、背景色
  7. 第八期:继美商务部拉黑多家中国公司后,MIT开始审查对华AI合作项目
  8. linux nginx 系统服务,linux 把nginx加入到系统服务的方法
  9. (转) Arcgis for js之WKT和GEOMETRY的相互转换
  10. python的装饰器很有用吗_你真的了解python装饰器么
  11. 不要安全要性能,禁用补丁提高CPU性能
  12. 勾股定理的html代码,有趣的数学——勾股定理
  13. 微信小程序商城源码C# 、Asp.Net, Mvc +sqlserver 2012+后台 微信小程序源码C#
  14. Python 爬虫案例
  15. 【HDL系列】半减器、全减器和减法器原理和设计
  16. 用泰勒级数展开证明欧拉公式
  17. 光功率 博科交换机_交换机是否支持查看光模块型号及收发光功率
  18. Android Studio 里sync下载慢,怎么办?
  19. “梧桐杯”中国移动大数据应用创新大赛 - 智慧金融赛道Baseline
  20. benj™ 100+城市街拍电影人像调色LR预设/移动LR预设/LUT预设效果预览

热门文章

  1. AB1601串口之bugs
  2. C++ Primer 5th笔记(chap 16 模板和泛型编程)效率与灵活性
  3. 01-How to setup SDK and compile TAs
  4. [How TO]-How to install maven
  5. [trustzone]-ARM Core的扩展和ELx级别的切换过程
  6. Android keystore/Keymaster的代码导读
  7. 用Go语言建立一个简单的区块链part5:地址
  8. 102. 最佳牛围栏【二分 / 思维 不错】
  9. Acwing第 17 场周赛【完结】
  10. 项目: 图书管理系统 【C++ / C】