JSP之内置对象与作用域
来源:互联网 发布:淘宝店怎样提高流量 编辑:程序博客网 时间:2024/06/05 05:12
九个内置对象:
pageContext, request, response, session, application, config, out, page, exception
四大作用域:
Page范围:只在一个页面中保存;javax.servlet.jsp.PageContext(抽象类)
<% //设置两个page范围数据key->value pageContext.setAttribute("name", "root"); pageContext.setAttribute("password", 123456);%><% //取值 String name = (String) pageContext.getAttribute("name"); int password = (Integer) pageContext.getAttribute("password");%> 用户名:<%=name%><br /> 密码:<%=password%><br />
Request范围:只在一个请求中保存数据;javax.servlet.http.HttpServletRequest(接口)
requestScope.jsp<% //设置两个request范围数据key->value request.setAttribute("name", "root"); request.setAttribute("password", 123456);%><jsp:forward page="requestTarget.jsp"></jsp:forward>requestTarget.jsp:<% //取值 String name = (String) request.getAttribute("name"); int password = (Integer) request.getAttribute("password");%>用户名:<%=name%><br /> 密码:<%=password%><br />
Session范围:只在一个请求中保存数据,仅供单个用户使用;javax.servlet.http.HttpSession(接口)
sessionScope.jsp<% //设置两个session范围数据key->value session.setAttribute("name", "root"); session.setAttribute("password", 123456);%>设置完毕sessionTarget.jsp<% //取值 String name = (String) session.getAttribute("name"); int password = (Integer) session.getAttribute("password");%>用户名:<%=name%><br /> 密码:<%=password%><br />
Application范围:在整个服务器上保存数据,所有用户共享;javax.servlet.ServletContext(接口)
applicationScope.jsp<% //设置两个session范围数据key->value application.setAttribute("name", "root"); application.setAttribute("password", 123456);%>设置完毕applicationTarget.jsp<% //取值 String name = (String) application.getAttribute("name"); int password = (Integer) application.getAttribute("password");%>用户名:<%=name%><br /> 密码:<%=password%><br />
Session和Application的区别在于Appliaction是全局的,可以在不同的电脑上获取这些值,而Session只能在当前申请的浏览器下获取这些值。
Request和Session用的比较多。
使用<%@ page import=”java.util.*”%>来导入包
response对象:
//自动刷新<% //每隔一秒刷新一次页面 response.setHeader("refresh", "1"); Date myData = new Date();%>当前时间:<%=myData.toLocaleString()%>//重定向,不能带参数<% response.sendRedirect("pageScope.jsp");%>
post放在数据包里,安全
get放在Url后面
form提交基本都是用host
//操作cookie应用,cookie存在客户端,session存在服务器response.jsp<script type="text/javascript"> function resetValue() { document.getElementById("userName").value = ""; document.getElementById("password").value = ""; }</script><% String userName = null, pwd = null; Cookie[] cookies = request.getCookies(); for (int i = 0; cookies != null && i < cookies.length; i++) { if (cookies[i].getName().equals("userNameAndPwd")) { userName = cookies[i].getValue().split("-")[0]; pwd = cookies[i].getValue().split("-")[1]; } } System.out.println(userName + pwd); if (userName == null) { userName = ""; } if (pwd == null) { pwd = ""; }%><body> <form action="userLogin.jsp" method="post"> <table> <tr> <td>用户名:</td> <td><input type="text" id="userName" name="userName" value="<%=userName%>" /></td> </tr> <tr> <td>密码:</td> <td><input type="password" id="pwd" name="pwd" value="<%=pwd%>" /></td> </tr> <tr> <td>记住密码:</td> <td><input type="checkbox" id="remember" name="remember" value="remember-me" /></td> </tr> <tr> <td><input type="submit" value="登录" /></td> <td><input type="button" value="重置" onclick="resetValue()" /></td> </tr> </table> </form></body>userLogin.jsp<body> <% String userName = request.getParameter("userName"); String pwd = request.getParameter("pwd"); String remember = request.getParameter("remember"); if ("remember-me".equals(remember)) { Cookie userNameAndPwd = new Cookie("userNameAndPwd", userName + "-" + pwd); userNameAndPwd.setMaxAge(1 * 60 * 60 * 24 * 7); response.addCookie(userNameAndPwd);//保存cookie System.out.print("设置cookie成功!"); } response.sendRedirect("response.jsp"); %></body>
out对象:向客户端输出各种类型数据,可以管理应用服务器上的输出缓冲区。
<% out.print(out.getBufferSize() + "<br/>");//总共缓冲区大小 out.print(out.getRemaining());//未使用的缓冲区大小%>
Config对象:JSP页面通过JSP容器初始化时被传递的对象。
exception对象:处理JSP文件在执行时发生的异常
在页头加上:<%@ page errorPage=”error.jsp”%>
在error.jsp头加上<%@ page isErrorPage=”true”%>会自动处理异常
pageContext对象:相当于页面中所有对象功能集合,能够访问到页面中所有对象。
- JSP之内置对象与作用域
- JSP内置对象之四个作用域
- JSP内置对象之四个作用域
- JSP内置对象之四个作用域
- JSP内置对象之四个作用域
- JSP内置对象之四个作用域
- JSP内置对象之四大作用域
- jsp内置对象作用域
- JSP内置对象,作用域
- JSP中九大内置对象与四大作用域
- 服务器端之jsp内置对象和作用域
- 面试总结之JSP原理、内置对象以及作用域
- jsp之九大内置对象与四大域对象
- jsp之九大内置对象与四大域对象
- jsp内置对象以及作用域概述
- JSP中九大内置对象作用域
- JSP内置对象和作用域
- jsp内置对象之get与post
- 今天开张了~
- JUEL中得到identifier的值
- 影响Java线程数、Server连接数的几个系统参数
- Solidworks安装界面是英文的解决办法
- 【OpenJudge】c语言_A*B问题
- JSP之内置对象与作用域
- rails中sql的增删改(数据迁移)
- 我是如何在GitHub上开源一个项目的(截图说明) (VS2010可以安装git插件)
- 安卓渐变背景的实现
- 谈 UIView Animation 编程艺术
- 线性表(java)
- CR1000编程系列02 HelloWorld
- 从Hadoop到Spark的架构实践
- dubbo用途介绍