如果需要在多次请求中(间隔请求)的信息,可以存放在session中携带,例如之前的银行系统中的username,就可以在最开始存入session中
if("登陆成功".equals(result)){HttpSession session=req.getSession();session.setAttribute("username",username);RequestDispatcher rd= req.getRequestDispatcher("welcome.jsp");rd.forward(req,resp);}
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("UTF-8");HttpSession session = req.getSession();String username = (String) session.getAttribute("username");AtmService atmService = MySpring.getJavaBean("service.AtmService");Float balance = atmService.inquire(username);//request对象中有两个map集合,Object value=request.getAttribute("key");req.setAttribute("balance", balance);req.getRequestDispatcher("showBalance.jsp").forward(req, resp);}
setMaxInactiveInterval(秒**)**方法用于设置session最大活跃时间,超出时间session对象不活跃但对象还在;默认的最大活跃时间为30分钟;
session.invalidate()**方法设置session对象失效
session.getid(),返回值为String
ServletContext application 全局上下文对象
对比于session,若我们换一个浏览器请求同样的信息,session失效,因为它是一次会话,而application是全局上下文对象不会失效
| 方法 | 返回值 |
|---|---|
| application.removeAttribute(“key”) | 无 |
| application.setAttribute(“key”,Object) | 无 |
| application.getAttribute(“key”) | Object |
| application.getAttributeNames() | Enumeration |
| application.getInitParameter(“key”) | String |
| application.getInitParameterNames() | Enumeration |
| application.getRealPath() | String |

index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %><html><head></head><body><%String value= application.getInitParameter("keyParam");//注意此处System.out.println("我是"+value);%><form action="test.jsp" method="post">测试数据:<input type="text" name="test" value=""><br><input type="submit" value="submit"></form></body></html>
JSPWriter out write(); println();
Object page(等于this,当前页对象) 例如index_jsp.java这个类的对象
PageContext pageContext 页面对象上下文
作用域对象:
pageContext 只在当前页作用域中可以访问(例如index_jsp.java这个类的范围内)
request 一次请求的范围之内
session 一次会话范围内
application 全局范围内(好多个session可以共享)
ServletConfig config
| 方法 | 返回值 |
|---|---|
| config.getServletContext() | ServletContext(application) |
| config.getInitParameter(“key”) | String |
| config.getInitParameterNames() | Enumeration |
| config.getServletName() | String |
Exception exception
error.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" isErrorPage="true" %><html><head></head><body>异常(*^▽^*)</body></html>
<%@ page contentType="text/html;charset=UTF-8" language="java" errorPage="error.jsp" %>
注意:404没有找到资源不是异常
**
