国产麻豆精品视频-国产麻豆精品免费视频-国产麻豆精品免费密入口-国产麻豆精品高清在线播放-国产麻豆精品hdvideoss-国产麻豆精品

始創于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業
  • 60秒人工響應
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補償
您的位置: 網站首頁 > 幫助中心>文章內容

RedHatLinux網絡服務器構架實務(七)

發布時間:  2012/8/13 11:54:52
 vi/home/www/cnmsql.jsp

##源代碼如下: 
<%@pagelanguage="java"import="java.sql.*"%>
<%
Class.forName("org.gjt.mm.mysql.Driver");
Connectionconn=DriverManager.getConnection("jdbc:mysql://host_name/db_name","user_name","password");
Statementstmt=conn.createStatement();
ResultSetrs=stmt.executeQuery("select*fromprov");
rs.next();
out.print(rs.getString("prov_id")+""+rs.getString("prov_name")+"<br>");
rs.next();
out.print(rs.getString("prov_id")+""+rs.getString("prov_name")+"<br>");
rs.previous();
out.print(rs.getString("prov_id")+""+rs.getString("prov_name")+"<br>");
rs.last();
out.print(rs.getString("prov_id")+""+rs.getString("prov_name")+"<br>");
rs.first();
out.print(rs.getString("prov_id")+""+rs.getString("prov_name")+"<br>");
rs.close();
stmt.close();
conn.close();
%>

4測試該程序
lynxhttp://www.yesgo.loc/cnmysql
##正確的結果應該是:

1安徽
2北京
1安徽
34臺灣
1安徽

例二:使用連接池連接數據庫
1建立數據源
vi/usr/local/resin/conf/resin.conf

<resource-ref>
<res-ref-name>jdbc/yesgo</res-ref-name>//數據源名稱
<res-type>javax.sql.DataSource</res-type> //數據源類型
<init-paramdriver-name="org.gjt.mm.mysql.Driver"/>//數據庫驅動
<init-paramurl="jdbc:mysql://localhost/yesgo"/>//連接串
<init-paramuser="your_user_name"/>//用戶名
<init-parampassword="your_password"/>//密碼
<init-parammax-connections="20"/>//最大連接數
<init-parammax-idle-time="30"/> //延時時間
</resource-ref>

2創建JSP源文件
touch/home/www/testpool.jsp
chown-Rwww/home/www/testpool.jsp
chgrp-rroot/home/www/testpool.jsp
chmod771/home/www/testpool.jsp

vi/home/www/testpool.jsp
##源代碼如下:

<%@pagelanguage="java"import="java.sql.*,com.caucho.sql.*;"%>
<%
DBPoolpool=newDBPool();
Connectionconn=pool.getPool("data_source_name").getConnection();
Statementstmt=conn.createStatement();
ResultSetrs=stmt.executeQuery("select*fromprov");
rs.next();
out.print(rs.getString("prov_id")+rs.getString("prov_name")+"<br>");
rs.next();
out.print(rs.getString("prov_id")+rs.getString("prov_name")+"<br>");
rs.previous();
out.print(rs.getString("prov_id")+rs.getString("prov_name")+"<br>");
rs.last();
out.print(rs.getString("prov_id")+""+rs.getString("prov_name")+"<br>");
rs.first();
out.print(rs.getString("prov_id")+rs.getString("prov_name")+"<br>");
rs.close();
stmt.close();
conn.close();
%>

3調試該程序
lynxhttp://www.yesgo.loc/testpool.jsp
##處理的結果跟例一是一樣的:

1安徽
2北京
1安徽
34臺灣
1安徽

例三:使用處理層連接數據庫
##本例告訴你如何使用組件
##其實你完全可以寫一個bean來處理數據庫,而不用象例二那么羅索。只用四條語句就可以取出數據庫中的所有數據并顯示出來,這樣做實現了處理層和邏輯層的徹底分離,由邏輯層發出指令、由處理層去響應相關處理,記錄集也不會返回到邏輯層的jsp頁面,而由處理層的bean處理,使得代碼非常精簡,效率也更高。至于如何書寫組件不是本文檔的重點,下面僅給出一個組件的例子并說明邏輯層的調用方法,你會發現其實邏輯層是個官僚,處理層是下屬,呵呵。

1創建處理層組件

下面的組件是我為公司寫的數據庫處理組件的簡化版本,考慮到篇幅和可讀性等問題,這里我簡化了它的功能(象數據分頁、批量更新、獲取字段數和字段名稱,用set和get提高其擴展性、對其他連庫方法的支持等都沒有出現在下面的代碼中),使之包含所有常用的功能并使之更加清晰和易于理解;其二,我將連庫動作加到了構造函數中,這是個優點也是個缺點,優點是簡化了連庫動作,缺點是降低了通用性,我沒有添加設置數據源等方法,從而每當變換一次數據庫就需要改寫組件中的連接池名稱,這在做一個固定項目的時候是可以的,如果你需要set數據源,可以自行添加;
##使用組件的方法:
我這里說的是使用bean的通用方法,你建立自己的bean目錄可以仿照該例子。在你的站點根目錄下建立resin.conf中指定的存放bean的目錄,我上面的舉例是classes,那你就建立classes目錄,那么classes就是你站點的class根目錄。然后在下面依次建立com\gledecity\yesgo\sql,注意它們之間是父子關系,不是同級文件夾,然后將下面即將建立的DBBridge.java放到"站點根目錄\classes\com\gledecity\yesgo\sql"目錄下,然后將該文件上傳到服務器端即可。上面的步驟在微軟平臺上使用UltraDev之類的開發工具即可完成,當然手工也可以。


本文出自:億恩科技【www.artduck.net】

服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線