溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaBean四個作用域范圍的詳解

發(fā)布時間:2020-10-14 02:30:22 來源:腳本之家 閱讀:250 作者:cakin24 欄目:編程語言

JavaBean四個作用域范圍的詳解

一 說明

使用useBeans的scope屬性可以用來指定javabean的作用范圍。

 二 四個作用范圍

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>
  <h2>系統(tǒng)登錄</h2>
  <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"/>
  <h2>setProperty動作元素</h2>
  <hr>
  <!--根據(jù)表單自動匹配所有的屬性 -->
  <%--
  <jsp:setProperty name="myUsers" property="*"/> 
  --%>
  <!--根據(jù)表單匹配所有部分的屬性 -->
  <%--
  <jsp:setProperty name="myUsers" property="username"/> 
  --%>
  <!--根表單無關(guān),通過手工賦值給屬性 -->
  <%--
  <jsp:setProperty name="myUsers" property="username" value="lisi"/>
  <jsp:setProperty name="myUsers" property="password" value="888888"/>
  --%>
  <!--通過URL傳參數(shù)給屬性賦值 -->
  <jsp:setProperty name="myUsers" property="username"/>
  <jsp:setProperty name="myUsers" property="password" param="mypass"/>
  <!-- 使用傳統(tǒng)的表達式方式來獲取用戶名和密碼 -->
  <%--  
    用戶名:<%=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>
    <h2>Javabean的四個作用域范圍</h2>
    <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>
    <!-- 使用內(nèi)置對象獲取用戶名和密碼 -->
    <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>
 

四 測試結(jié)果

JavaBean四個作用域范圍的詳解

 如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI