Servlet Request对象
一、 Request对象提供的功能
1、获取客户机的ip地址 – getRemoteAddr()
2、获取当前Web应用的虚拟路径 – getContextPath()
3、获取请求头信息 – getHeader(String name)
String address = Request.getRemoteAddr();
String path = Request.getContextPath();
String header = Request.getHeader();
二、 获取页面请求参数(通过name属性获取)
getParameter(String name)(获取一个属性)
getParameterValues(String name)(获取多个属性,返回数组)
String name = request. getParameter(name);
String[] spots = request. getParameter(spot);
三、乱码解决方式
post和get 请求通用解决
byte[] bs = name.getBytes("iso8859-1");
name = new String( bs, "utf-8" );
post乱码(获取参数之前加上)
request.setCharacterEncoding("utf-8");
四、.请求转发
request.getRequestDispatcher("所跳转资源的路径").forward(req, res);
五、域对象使用
(1) setAttribute(String name, Object value);
(2) getAttribute(String name)
(3) removeAttribute(String name)
六、.创建响应的具体流程
1.创建jsp页面,发送servlet(action)请求
2.调用相应的servlet
3.从数据库中查出相应的数据
4.利用request.setAttribute(String name, Object value);进行打包处理
5.转发数据request.getRequestDispatcher(“所跳转资源的路径”).forward(req, res);
6.jsp中EL表达式进行响应
七、.代码
根据数据库连接查询出需要的信息
String name = "张三";
String age = "18";
将数据进行打包发送
request.setAttribute("name", name);
request.setAttribute("age", age);
request.getRequestDispatcher("/xx.jsp").forward(req, res);
创建jsp响应对象
<body>
<%--
<%= request.getAttribute("name") %>
--%>
<p>姓名: ${ name }</p>
<p>年龄: ${ age }</p>
</body>