亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

J2EE應用開發中與Oracle數據庫的連接

2019-11-18 12:39:14
字體:
來源:轉載
供稿:網友

  在J2EE應用程序開發中,應用程序與數據庫連接的建立是我們經常碰到的問題之一。在這里我們主要談談在本地應用程序中通過OCI方式、thin方式和JdbcOdbc橋方式連接Oracle數據庫,在iplanet application Server 6.5和Sun java System Application Server 7中對Oracle數據庫連接池的配置以及應用中如何從連接池中獲得連接。
  
  一、本地通過JDBC獲得Oracle數據庫連接
  
  通過JDBC獲得Oracle數據庫連接,有三種方式:OCI方式、thin方式和JdbcOdbc橋方式。OCI方式依靠于本地的動態鏈接庫,假如在本地安裝了Oracle數據庫客戶端可以采用該方式;而thin方式為純java的數據庫連接方式;JdbcOdbc橋方式依靠于本地ODBC數據庫源的配置,這種方式一般不太被采用。
  
  1、OCI方式
  
  先在本地安裝Oracle客戶端,安裝完之后,在安裝的路徑中可以找到…/jdbc/lib/classes12.zip文件,我們在環境變量classpath中設置classes12.zip所在的路徑。
  
  然后通過以下的數據庫連接類,在本地通過OCI方式獲得Oracle數據庫連接。
  
  /**
  * 在本地獲得數據庫連接
  */
  
  package com.j2ee.db;
  
  import java.util.*;
  import java.sql.*;
  import javax.sql.*;
  import java.io.*;
  import oracle.jdbc.driver.*;
  import javax.naming.*;
  
  /**
  * 通過OCI方式獲得Oracle數據庫連接
  */
  public class DbConnection
  {
  final static String sDBDriver =
  "oracle.jdbc.driver.OracleDriver";
  final static String sConnStr =
  "jdbc:oracle:oci8:sr/sr@ora199";
  
  /**
  *
  */
  public DbConnection()
  {
  }
  
  /**
  * 獲得Oracle數據庫連接
  */
  public java.sql.Connection connectDbByOci()
  {
  java.sql.Connection conn=null;
  try
  {
  Class.forName(sDBDriver);
  conn = DriverManager.getConnection(sConnStr);
  }
  catch (Exception e)
  {
  System.out.  }
  return conn;
  }
  }
  
  在連接字符串 "jdbc:oracle:oci8:sr/sr@ora199" 中,"sr/sr"為Oracle用戶的用戶名和口令,"ora199"為數據庫服務名。
  
  2、thin方式
  
  先到Oracle技術網(http://otn.oracle.com/global/cn/software/tech/java/sqlj_jdbc/index.Html)下載Oracle JDBC Drivers,同樣地將下載后的zip文件的路徑設置在環境變量classpath。然后通過以下的數據庫連接類,在本地通過thin方式獲得Oracle數據庫連接。
  
  /**
  * 在本地獲得數據庫連接
  */
  
  package com.j2ee.db;
  
  import java.util.*;
  import java.sql.*;
  import javax.sql.*;
  import java.io.*;
  import oracle.jdbc.driver.*;
  import javax.naming.*;
  
  /**
  * 通過thin方式獲得Oracle數據庫連接
  */
  public class DbConnection
  {
  private String sConnStr = "";
  
  /**
  * 缺省構造器
  */
  public DbConnection()
  {
  sConnStr = "jdbc:oracle:thin:
  @10.1.4.199:1521:ora199";
  }
  
  /**
  * @param ip,serviceName
  */
  public DbConnection(String ip,String serviceName)
  {
  sConnStr = "jdbc:oracle:thin:
  @"+ip+":1521:"+serviceName;
  }
  
  /**
  * 通過thin方式獲得Oracle數據庫的連接.
  */
  public java.sql.Connection connectDbByThin()
  {
  java.sql.Connection conn=null;
  try
  {
  Class.forName(sDBDriver);
  conn = DriverManager.getConnection
  (sConnStr,"sr","sr");
  }
  catch (Exception e)
  {
  System.out.println
  ("ERROR:"+e.getMessage());
  }
  return conn;
  }
  
  /**
  * 通過thin方式獲得Oracle數據庫的連接.
  * @param userId,pass
Word
  */
  public java.sql.Connection connectByJdbc
  (String userId,String password)
  {
  java.sql.Connection conn=null;
  try
  {
  Class.forName(sDBDriver);
  conn = DriverManager.getConnection
  (sConnStr,userId,password);
  }
  catch (Exception e)
  {
  System.out.println
  ("ERROR:"+e.getMessage());
  }
  return conn;
  }
  }
  
  這種方式運用起來比較靈活,簡單,具有較強的移植性和適用性。只要注重連接字符串"jdbc:oracle:thin:@10.1.4.199:1521:ora199"中具體參數的設置即可。
  
  3、JdbcOdbc橋方式
  
  先通過治理工具中的數據源來添加本地對Oracle數據庫的連接,然后通過以下的數據庫連接類,在本地通過JdbcOdbc橋方式獲得Oracle數據庫連接。
  
  /**
  * 在本地獲得數據庫連接
  */
  
  package com.j2ee.db;
  
  import java.util.*;
  import java.sql.*;
  import javax.sql.*;
  import java.io.*;
  import oracle.jdbc.driver.*;
  import javax.naming.*;
  
  /**
  * 通過JdbcOdbc橋方式獲得Oracle數據庫連接
  */
  public class DbConnection
  {
  /**
  *
  */
  public DbConnection()
  {
  }
  
  /**
  * 獲得Oracle數據庫連接
  */
  public java.sql.Connection
  connectDbByJdbcOdbcBridge()
  {
  java.sql.Connection conn=null;
  try
  {
  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  con=DriverManager.getConnection
  ("jdbc:odbc:ora199","sr","sr");
  }
  catch (Exception e)
  {
  System.out.println("ERROR:"+e.getMessage());
  }
  return conn;
  }
  }
  
  在getConnection方法中第一個參數"jdbc:odbc:ora199" 中的"ora199"為本地ODBC數據源的數據源名稱,第二個參數和第三個參數分別為Oracle的用戶名和口令。
  
  二、通過連接池獲得Oracle數據庫連接
  
  這部分主要講述在iPlanet Application Server 6.5和Sun Java System Application Server 7中Oracle數據庫連接池的配置,以及在應用中如何通過連接池獲得數據庫的連接。
  
  1、iPlanet Application Server 6.5連接池的配置
  
  先打開iPlanet Application Server 6.5的治理控制臺,選中"database"面板,再選擇"External JDBC Drivers"選項后,點擊"Add…"按鈕,在彈出的對話框中,添加一個名為"ora-type4"的JDBC Driver。
   J2EE應用開發中與Oracle數據庫的連接(圖一)
  Driver Classpath:該參數填寫classes12.zip文件的物理路徑。然后在"External JDBC DataSources"中選擇"Add…",在彈出的對話框中添加一個JNDI名稱為"credit2"的數據源。
   J2EE應用開發中與Oracle數據庫的連接(圖二)
  DriverType:選擇剛添加好的"ora-type4";
  
  Datasource:ora199,為Oracle數據庫服務名;
  
  Connection Pool Parameters:圖中顯示的是缺省設置,可以根據自己環境情況來更改這些設置。保存完設置后,在"DataSource Selection Box"中,選擇剛添加的"credit2"數據源,再選擇"Vendor Specific Properties"按鈕。在對話中添加一個URL屬性。
   J2EE應用開發中與Oracle數據庫的連接(圖三)
  至此,iPlanet Application Server 6.5中的數據庫連接池配置完畢,重起服務使之生效。
  
  2、Sun Java System Application Server 7連接池的配置
  
  在配置之前將classes12.zip文件置于…/server1/lib目錄下。通過瀏覽器的4848端口打開Sun Java System Application Server 7的治理界面,選擇"server1"->"JDBC"-> "Connection Pools"下的"New…"
   J2EE應用開發中與Oracle數據庫的連接(圖四)
  添加一個名稱為"MyConnectionPool"的Oracle數據庫連接池。"Next"下一步。
   J2EE應用開發中與Oracle數據庫的連接(圖五)
  在"General"中填寫"Datasource Classname"。
   J2EE應用開發中與Oracle數據庫的連接(圖六)
  在"Properties"中將不需要的屬性刪除,同時添加"URL"屬性。
  
  "dataSourceName"中填寫Oracle數據庫服務名。
  
  以下連接池的缺省設置,可以根據自己環境的情況作相應的調整。
   J2EE應用開發中與Oracle數據庫的連接(圖七)
  選擇"Finish"完成連接池的設置。
  
  下一步為"MyConnectionPool"連接池創建一個JNDI,以便應用程序能夠通過該名稱獲得連接池中的連接。 "server1"->"JDBC"-> "JDBC Resources"下的"New…"
  J2EE應用開發中與Oracle數據庫的連接(圖八)
  至此,Sun Java System Application Server7中的數據庫連接池配置完畢,重起服務使之生效。
  
  3、通過連接池獲得連接
  
  以上在i

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲精品日韩欧美| 亚洲欧洲日产国产网站| 久久成人免费视频| 国产成人精品国内自产拍免费看| 亚洲剧情一区二区| 日韩av在线影视| 日韩av影视在线| 亚洲欧美日韩中文在线| 免费91在线视频| 欧美黑人一区二区三区| 国产精品国产三级国产专播精品人| 亚洲欧美福利视频| 97av在线视频免费播放| 日韩免费av片在线观看| 日韩中文字幕网址| 国产精品网址在线| 精品露脸国产偷人在视频| 亚洲第一av网| 亚洲国产精品久久久| 欧美亚洲在线播放| 亚洲欧美中文字幕在线一区| 精品国产欧美成人夜夜嗨| 国产精品海角社区在线观看| 中文字幕免费精品一区| 美日韩精品免费观看视频| 欧美亚洲成人精品| 国产成人精品在线播放| 国内精品久久久| 亚洲社区在线观看| 久久久久久网站| 欧美性猛交xxxx偷拍洗澡| 久久国产精品亚洲| 日本久久久久久| 国产精品成人va在线观看| www.久久色.com| 亚洲午夜小视频| 欧美视频在线观看 亚洲欧| 久久久久五月天| 国内精品久久久久影院优| 国产精品美女久久| 国产a级全部精品| 久久99国产综合精品女同| 亚洲欧洲中文天堂| 成人免费观看49www在线观看| 欧洲亚洲在线视频| 国产在线精品成人一区二区三区| 欧美制服第一页| 亚洲天堂av女优| 成人国产在线激情| 国产精品aaa| 欧美日韩一区二区在线播放| 欧美成人精品激情在线观看| 欧美与黑人午夜性猛交久久久| 亚洲天堂2020| 日韩国产中文字幕| 国产午夜精品理论片a级探花| 成人妇女免费播放久久久| 日韩av在线免费观看| 欧美在线视频观看免费网站| 国产日韩欧美影视| 欧美二区在线播放| 亚洲日本成人网| 菠萝蜜影院一区二区免费| 欧美日韩亚洲精品一区二区三区| 97精品国产91久久久久久| 国产免费久久av| 久久久久久这里只有精品| 岛国视频午夜一区免费在线观看| 深夜福利日韩在线看| 亚洲最大福利网站| 欧美成人精品h版在线观看| 欧美中文字幕精品| 日韩最新免费不卡| 欧美不卡视频一区发布| 日韩欧美第一页| 国产日韩在线视频| 亚洲成人a**站| 色一情一乱一区二区| 最近2019中文字幕在线高清| 欧美一区三区三区高中清蜜桃| 亚洲欧美日本精品| 国外色69视频在线观看| 中文字幕久久久av一区| 97在线视频免费看| 91国产精品电影| 久久久精品2019中文字幕神马| 日本久久精品视频| 中文国产亚洲喷潮| 欧美老肥婆性猛交视频| 成人免费在线网址| 91精品国产精品| 亚洲电影成人av99爱色| 欧美一级淫片aaaaaaa视频| 亚洲人成毛片在线播放| 亚洲精品一区二区三区婷婷月| 久久久亚洲影院你懂的| 久久久精品日本| 国产成人亚洲综合| 午夜伦理精品一区| 中文字幕欧美日韩va免费视频| 热草久综合在线| 国产成人亚洲综合91精品| 久久频这里精品99香蕉| 91情侣偷在线精品国产| 国产美女扒开尿口久久久| 91chinesevideo永久地址| 亚洲精品资源美女情侣酒店| 日韩欧美国产成人| 亚洲欧美日韩国产中文| 亚洲免费视频网站| 国产欧美日韩高清| 亚洲国产欧美久久| 国内精品久久影院| 欧美裸身视频免费观看| 国产一区二区三区视频| 欧美裸体xxxx| 国语自产在线不卡| 国产成人一区三区| 日韩在线观看免费全集电视剧网站| 综合久久五月天| 韩国三级日本三级少妇99| 精品香蕉在线观看视频一| 久久91精品国产91久久跳| 久久久人成影片一区二区三区| 91精品国产91久久久久久吃药| 国产精品视频大全| 欧美精品一区二区三区国产精品| 成人性教育视频在线观看| 亚洲第一福利在线观看| 国产精品美女免费视频| 热门国产精品亚洲第一区在线| 中文字幕亚洲自拍| 97香蕉超级碰碰久久免费软件| 91亚洲精品在线| 亚洲精品视频免费在线观看| 欧美另类69精品久久久久9999| 国产精品老牛影院在线观看| 久久久这里只有精品视频| 97超碰蝌蚪网人人做人人爽| 国产999精品久久久影片官网| 国产精品成人国产乱一区| 国产成人精品久久二区二区91| 92国产精品久久久久首页| 欧美日韩国产精品一区二区三区四区| 国产91在线视频| 青青a在线精品免费观看| 91久久国产精品| 久久人人97超碰精品888| 久久视频在线看| 亚洲综合色激情五月| 欧美黑人一区二区三区| 精品av在线播放| 成人黄色免费片| 日韩av一区在线| 久久久久国产精品一区| 欧美福利视频在线| 亚洲精品aⅴ中文字幕乱码| 精品国产福利在线| 久久久久亚洲精品成人网小说| 欧美影院成年免费版| 8090成年在线看片午夜| 在线精品国产成人综合| 欧美视频中文在线看| 日韩理论片久久|