HttpServletRequest
代表客户端的请求,用户通过
Http
协议访问服务器,
HTTP
请求中的所有信息会被封 装到HttpServletRequest
,通过这个
HttpServletRequest
的方法,获得客户端的所有信息;
1、获取客户端参数
2、请求转发
req.getRequestDispatcher("/success.jsp").forward(req,resp);
请你聊聊重定向和转发的区别?
相同点
页面都会实现跳转
不同点
请求转发的时候,
url
不会产生变化
307
重定向时候,
url
地址栏会发生变化;
302
会话
会话
:用户打开一个浏览器,点击了很多超链接,访问多个
web
资源,关闭浏览器,这个过程可以称之 为会话;
有状态会话
:一个同学来过教室,下次再来教室,我们会知道这个同学,曾经来过,称之为有状态会话;
一个网站,怎么证明你来过?
客户端
服务端
1.
服务端给客户端一个 信件,客户端下次访问服务端带上信件就可以了;
cookie
2.
服务器登记你来过了,下次你来的时候我来匹配你;
seesion
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
req.setCharacterEncoding("utf-8");
resp.setCharacterEncoding("utf-8");
String username = req.getParameter("username");
String password = req.getParameter("password");
String[] hobbys = req.getParameterValues("hobbys");
System.out.println("=============================");
//后台接收中文乱码问题
System.out.println(username);
System.out.println(password);
System.out.println(Arrays.toString(hobbys));
System.out.println("=============================");
System.out.println(req.getContextPath());
//通过请求转发
//这里的 / 代表当前的web应用
req.getRequestDispatcher("/success.jsp").forward(req,resp);
}
保存会话的两种技术
cookie
客户端技术
(响应,请求)
session
服务器技术,利用这个技术,可以保存用户的会话信息? 我们可以把信息或者数据放在
Session
中!
常见常见:网站登录之后,你下次不用再登录了,第二次访问直接就上去了!