request和response (请求和响应) 1.当Web容器收到客户端的发送过来http请求,会针对每一次请求,分别创建一个用于代表此次请求的HttpServletRequest对象 (request)对象、和代表响应的HTTPServletResponse对象 (response)。 request负责获取客户机提交过来的数据。 response负责向客户机输出数据。
- req(request)和(response)对象起到了服务器与客户机之间的信息传递作用。
- req对象用于接收客户端浏览器提交的数据,从浏览器端发出请求 ,取得数据。
- resp对象将服务器端的数据发送到客户端浏览器。
小技巧
如果需要传递数据 就使用转发
如果不需要传递数据,可以使用重定向
3. request 转发
设置数据到request作用域: req.setAttribute(key , Value);
前台EL表达式取值:${requestScope.Key}
转发:req.getRequestDispatcher(URI).forward(req, resp);
内部跳转,URI只能当前项目下,故不需要加项目名
4. response 重定向
重定向:resp.sendRedirect(URL);
可以跳转到外部项目,URL前需要加项目名
获取当前项目名:req.getContextPath()
- req.setCharacterEncoding() 设置对客户端请求和数据库取值时的编码,只对post请求有效。
- req.getParameter() 用于获取单值的参数。
- req.setAttribute() 在request域中存储数据。
- req.getAttribute() 获取域中存储的数据。
- req.getRequestDispatcher() 获取转发器,参数路径以“/”打头,代表当前web项目根目录。
resp
- resp.setCharacterEncoding() 作用是指定服务器响应给浏览器的编码。
- resp.sendRedirect() 重定向。
- 1,request和response对象是由服务器创建的,我们来使用他们
- 2,request对象是用来获取请求消息,response对象是设置响应消息