日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
在JSP程序中Application使用淺析

JSP程序調用Javeabean命令UseBean中有Scope設置,一般有Application session page等設置,Page就是每頁重新產生usebean中的javabean新對象,一般情況是用這種,如果多個JSP程序間為共享數據,可以使用session

創(chuàng)新互聯(lián)主營阜寧網站建設的網絡公司,主營網站建設方案,App定制開發(fā),阜寧h5微信小程序開發(fā)搭建,阜寧網站營銷推廣歡迎阜寧等地區(qū)企業(yè)咨詢

而Application的意思,該javabean將一直存在,與session相對用戶來說,Application是相對應用程序的,一般來說,一個用戶有一個session,并且隨著用戶離開而消失;而Application則是一直存在,類似一個servlet程序,類似整個系統(tǒng)的"全局變量",而且只有一個實例。

MVC中控制功能

因此application這個特性,很適合用來做MVC中的控制功能,一般傳統(tǒng)MVC是用servlet做控制功能,V基本是JSP頁面,M就是中間件Javabean之類。

但是隨著JSP功能的完善和推廣,逐漸有替代servlet之趨勢,我們在實踐中更多使用的也是JSP,有時為了省卻麻煩的事情,就使用JSP代替servlet.尤其是其控制功能。

實際上,這個控制功能是封裝在一個Javabean中,JSP程序使用scope=application來調用這個Javabean,這樣,具備控制功能的javabean就類似servlet常駐內存,并和后臺各種中間件交互操作。

“首頁”的展現

在實際應用中,我們經常有多個用戶要同時訪問一個頁面,如首頁,這個首頁中有很多功能要運行,比如目錄分類,首頁程序要從數據庫中讀入樹形數據并展開,輸出到首頁,這個功能是封裝在Javabean中的。

那么首頁JSP程序調用這個Javabean時,使用scope=application, 再通過樹形數據的緩沖算法,這樣,多個用戶同時訪問首頁時,首頁JSP程序就無需每次啟動Javabean然后再反復讀取數據庫了。無疑大大提高速度。

所以如果你的首頁JSP訪問量很高,那么就應該在這方面多花點時間優(yōu)化。

數據庫連接緩沖

 
 
 
  1.   class="oracle.jdbc.pool.OracleConnectionCacheImpl"   
  2.   scope="application" /> 
  3.  
  4.  
  5.  
  6. <%   
  7. cods.setURL("jdbc:oracle:thin:@HOST:PORT:SID");  
  8. cods.setUser("scott");  
  9. cods.setPassword("tiger");  
  10. cods.setStmtCache (5);   
  11. %> 
  12.  
  13.  
  14.  
  15. <%@ page import="java.sql.*, javax.sql.*, oracle.jdbc.pool.*" %> 
  16.  
  17.  
  18.  
  19.    
  20.    
  21.  </li> <li>ConnCache JSP  </li> <li> 
  22.  
  23.    
  24.  Hello   

  25. <%= (request.getRemoteUser() != null? ", " +  
  26. request.getRemoteUser() : "") %> 
  27. ! I am Connection Caching JSP.  
  28.  

  29.  
  30.  I get the Connection from the Cache and recycle it back.  
  31.    
  32.  
  33.  

  34. <%  
  35. try {  
  36. Connection conn = cods.getConnection();  
  37.  
  38. Statement stmt = conn.createStatement ();  
  39. ResultSet rset = stmt.executeQuery ("SELECT ename, sal " +   
  40. "FROM scott.emp ORDER BY ename");  
  41.  
  42. if (rset.next()) {  
  43. %> 
  44.  
  45.  Employee Name  
  46.  Salary  
  47.   <%= rset.getString(1) %>  
  48.  $<%= rset.getDouble(2) %>  
  49.  
  50.  
  51. <% while (rset.next()) {  
  52. %> 
  53.  
  54.   <%= rset.getString(1) %>  
  55.  $<%= rset.getDouble(2) %>  
  56.  
  57.  
  58. <% }  
  59. %> 
  60.  
  61. <% }   
  62. else {  
  63. %> 
  64.  Sorry, the query returned no rows! 

     
  65.  
  66. <%   
  67. }  
  68. rset.close();  
  69. stmt.close();  
  70. conn.close(); // Put the Connection Back into the Pool  
  71.  
  72. } catch (SQLException e) {  
  73. out.println("

    " + "There was an error doing the query:");  

  74. out.println ("
    " + e + "
     \n 

    ");  

  75. }  
  76. %> 
  77.  
  78.  
  79.  

在JSP程序的實際運行中,使用Application緩存數據庫的連接,每次使用時,從緩沖中取出,用完就返回。

【編輯推薦】

  1. 教你在JSP中使用JavaMail
  2. 在JSP中動態(tài)生成并調用JSP程序
  3. JSTL介紹—JSP編程新組件 允許用標簽編程
  4. JSP開發(fā)所需要的Eclipse插件及安裝配置方法
  5. JDBC與JSP簡單模擬MVC三層架構

網頁題目:在JSP程序中Application使用淺析
本文路徑:http://www.dlmjj.cn/article/copiihj.html