JavaBean中关于四个作用域范围的详解

这篇文章主要介绍了JavaBean四个作用域范围的详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下

JavaBean四个作用域范围的详解

一 说明

使用useBeans的scope属性可以用来指定javabean的作用范围。

二 四个作用范围

三 代码

1、login.jsp

<%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8" %><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head>  <base href="<%=basePath%>" rel="external nofollow" rel="external nofollow" rel="external nofollow" >    <title>My JSP 'login.jsp' starting page</title>      <meta http-equiv="pragma" content="no-cache">    <meta http-equiv="cache-control" content="no-cache">    <meta http-equiv="expires" content="0">      <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">    <meta http-equiv="description" content="This is my page">    <!--    <link rel="stylesheet" type="text/css" href="styles.css" rel="external nofollow" rel="external nofollow" rel="external nofollow" >    -->  </head>  <body>  <h1>系统登录</h1>  <hr>  <form name="loginForm" action="dologin.jsp?mypass=999999" method="post">   <table>    <tr>     <td>用户名:</td>     <td><input type="text" name="username" value=""/></td>    </tr>    <tr>     <td>密码:</td>     <td><input type="password" name="password" value=""/></td>    </tr>    <tr>     <td colspan="2" align="center"><input type="submit" value="登录"/></td>         </tr>   </table>  </form> </body></html>

2、dologin.jsp

<%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head>  <base href="<%=basePath%>" rel="external nofollow" rel="external nofollow" rel="external nofollow" >    <title>My JSP 'dologin.jsp' starting page</title>      <meta http-equiv="pragma" content="no-cache">    <meta http-equiv="cache-control" content="no-cache">    <meta http-equiv="expires" content="0">      <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">    <meta http-equiv="description" content="This is my page">    <!--    <link rel="stylesheet" type="text/css" href="styles.css" rel="external nofollow" rel="external nofollow" rel="external nofollow" >    -->  </head>  <body>  <jsp:useBean id="myUsers" class="com.po.Users" scope="page"/>  <h1>setProperty动作元素</h1>  <hr>  <!--根据表单自动匹配所有的属性 -->  <%--  <jsp:setProperty name="myUsers" property="*"/>   --%>  <!--根据表单匹配所有部分的属性 -->  <%--  <jsp:setProperty name="myUsers" property="username"/>   --%>  <!--根表单无关,通过手工赋值给属性 -->  <%--  <jsp:setProperty name="myUsers" property="username" value="lisi"/>  <jsp:setProperty name="myUsers" property="password" value="888888"/>  --%>  <!--通过URL传参数给属性赋值 -->  <jsp:setProperty name="myUsers" property="username"/>  <jsp:setProperty name="myUsers" property="password" param="mypass"/>  <!-- 使用传统的表达式方式来获取用户名和密码 -->  <%--      用户名:<%=myUsers.getUsername() %><br>    密码:<%=myUsers.getPassword() %><br>  --%>  <!-- 使用getProperty方式来获取用户名和密码 -->   用户名:<jsp:getProperty name="myUsers" property="username"/> <br>   密码:<jsp:getProperty name="myUsers" property="password"/><br>  <br>  <br>    <a href="testScope.jsp" rel="external nofollow" >测试javabean的四个作用域范围</a>    <%     request.getRequestDispatcher("testScope.jsp").forward(request, response);   %>  </body></html>

3、testScope.jsp

<%@ page language="java" import="java.util.*"    contentType="text/html; charset=utf-8"%><%@ page import="com.po.Users"%><%    String path = request.getContextPath();    String basePath = request.getScheme() + "://"            + request.getServerName() + ":" + request.getServerPort()            + path + "/";%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><base href="<%=basePath%>" rel="external nofollow" rel="external nofollow" rel="external nofollow" > <title>My JSP 'testScope.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--    <link rel="stylesheet" type="text/css" href="styles.css" rel="external nofollow" rel="external nofollow" rel="external nofollow" >    --> </head> <body>    <h1>Javabean的四个作用域范围</h1>    <hr>    <jsp:useBean id="myUsers" class="com.po.Users" scope="page" />    用户名:<jsp:getProperty name="myUsers" property="username" /><br> 密码:<jsp:getProperty        name="myUsers" property="password" /><br>    <!-- 使用内置对象获取用户名和密码 -->    <hr>    <%--    用户名:<%=((Users)application.getAttribute("myUsers")).getUsername()%><br>    密码:<%=((Users)application.getAttribute("myUsers")).getPassword() %><br>  --%>    <%--    用户名:<%=((Users)session.getAttribute("myUsers")).getUsername()%><br>    密码:<%=((Users)session.getAttribute("myUsers")).getPassword() %><br>  --%>    <%--    用户名:<%=((Users)request.getAttribute("myUsers")).getUsername()%><br>    密码:<%=((Users)request.getAttribute("myUsers")).getPassword() %><br>  --%>    <%        String username = "";        String password = "";        if (pageContext.getAttribute("myUsers") != null) {            username = ((Users) pageContext.getAttribute("myUsers"))                    .getUsername();            password = ((Users) pageContext.getAttribute("myUsers"))                    .getPassword();        }    %>     用户名:<%=username%><br> 密码:<%=password%><br>   </body></html>

四 测试结果

以上就是JavaBean中关于四个作用域范围的详解的详细内容,更多请关注其它相关文章!

只剩下一条路,那就是成功的路。

JavaBean中关于四个作用域范围的详解

相关文章:

你感兴趣的文章:

标签云: