JSP內置對象application的作用:<獲取配置>《轉》


 

1.讓多個Jsp、servlet共享數據;

Html代碼   收藏代碼
  1.  <!-- 將i的值自動+1后放入application的變量中 -->  
  2. <%! int i = 0; %>  
  3. <%  
  4.      application.setAttribute("counter",String.valueOf(++i));  
  5. %>  
  6. <!-- 輸出i的值 -->  
  7. <%=i%>  

 在另外的jsp頁面可以用application.getAttribute("counter")直接獲取counter對應的值。

【理解】

我們可以把application理解為一個Map對象,任何Jsp、Servlet都可以把某個變量放入application中保存,並為之指定一個屬性名;而該web應用程序里的其他Jsp、Servlet就可以根據該屬性名來得到這個變量。

 

2.獲得Web應用配置參數:

Jsp頁面:訪問數據庫所使用的驅動、url、用戶名、密碼均在web.xml中給出。

Html代碼   收藏代碼
  1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
  2. <%@page import="java.sql.*"%>  
  3.   
  4. ......  
  5.   
  6. <%  
  7.         //從配置參數中獲取驅動  
  8.         String driver = application.getInitParameter("driver");  
  9.         //獲取數據庫URL  
  10.         String url = application.getInitParameter("url");  
  11.         //獲取用戶名和密碼  
  12.         String user = application.getInitParameter("user");  
  13.         String pass = application.getInitParameter("pass");  
  14.         //注冊驅動  
  15.         Class.forName(driver);  
  16.         //獲取數據庫連接  
  17.         Connection conn = DriverManager.getConnection(url,user,pass);  
  18.         //創建Statement對象  
  19.         Statement stmt = conn.createStatement();  
  20.         //執行查詢  
  21.         ResultSet rs = stmt.executeQuery("select * from newsinfo");  
  22. %>  
  23.         <table bgcolor = "9999dd" border="1" align="center">  
  24.         <%  
  25.             //遍歷結果集  
  26.             while(rs.next()){  
  27.          %>  
  28.          <tr>  
  29.          <td><%=rs.getString(1) %></td>  
  30.          <td><%=rs.getString(2) %></td>  
  31.          </tr>  
  32.          <%  
  33.             }  
  34.           %>  
  35.         </table>  

 

web.xml中進行如下配置:

Xml代碼   收藏代碼
  1. <context-param>  
  2.     <param-name>driver</param-name>  
  3.     <param-value>com.mysql.jdbc.Driver</param-value>  
  4. </context-param>  
  5. <context-param>  
  6.     <param-name>url</param-name>  
  7.     <param-value>jdbc:mysql://localhost:3306/javaee</param-value>  
  8. </context-param>  
  9. <context-param>  
  10.     <param-name>user</param-name>  
  11.     <param-value>root</param-value>  
  12. </context-param>  
  13. <context-param>  
  14.     <param-name>pass</param-name>  
  15.     <param-value>root</param-value>  
  16. </context-param>  

 通過這種方式,可以將一些配置信息放在web.xml文件中進行配置,避免使用硬編碼方式寫在代碼中,從而更好的提高了程序的移植性。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM