国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

從此不再心頭痛 數據庫連接方法總結

2024-07-21 02:14:46
字體:
來源:轉載
供稿:網友

//1.注冊jdbc驅動 方法有兩個:------------------

import java.lang.class; //方法一
class.forname("oracle.jdbc.oracledriver"); //事實上不用引入
import java.sql.drivermanager; //方法二:
drivermanager.registerdriver(new oracle.jdbc.oracledriver());

//2.打開數據庫連接,方法兩個:------------------

drivermanager.getconnection(url,username,password); //方法一:
//例子:
connection myconnection=drivermanager.getconnection(
"jdbc:oracle:[email protected]:1521:myoracle",
"name",
"password");
import oracle.jdbc.pool.oracledatasource; //方法二:使用數據源
oracledatasource mydatasource=new oracledatasource(); //創建數據源
mydatasource.setservername("localhost");
mydatasource.setdatabasename("myoracle");
mydatasource.setdrivertype("oci");
mydatasource.setnetworkprotocol("tcp"); //設置屬性
mydatasource.setportnumber(1521);
mydatasource.setuser("name");
mydatasource.setpassword("password");

//連接數據庫,可以重新指定用戶名和密碼,以不同的身份連接查詢;
connection myconnection=mydatasource.getconnection("username","password");

//3.創建jdbc statement對象----------------
//可以禁止自動提交 myconnection.setautocommit(false);
statement mystatement=myconnection.createstatement();
//4.從數據庫取得信息,即使用statement對象

resultset myresultset=mystatement.executequery(
"select userid,username from table"); //取得所有的信息
string result=myresultset.getstring("userid"); //取得某項信息
if(myresultset.wasnull()){
};
resultset.next();
myresultset.close(); //關閉
//在這里提交 myconnection.commit();

//5.關閉jdbc對象-------------
mystatement.close();
myconnection.close();
/*一般采用如下格式:
finally{
if(mystatement!=null){
mystatement.close();}
if(myconnection!=null{
myconnection.close();}
}
*/

//6.使用jdbc preparedstatement對象-------------
preparedstatement myprepstatement=myconnection.preparedstatement(
"insert into products"+
"(id,type_id,name) values ("+
"?,?,?"
")" //
);
myprepstatement.setint(1,100);
myprepstatement.setint(2,1100);
myprepstatement.setstring(3,"username"); //使用set方法
myprepstatement.excute(); //提交
/*二,使用連接緩存和連接池來連接數據庫
可以通過建立一個連接緩存,必要時向連接緩沖池添加連接。
*/
//首先討論連接緩沖池------------
import javax.sql.*;
import oracle.jdbc.pool.*;
oracleconnectionpooldatasource myoracle=mew oracleconnectionpooldatasource();
//創建連接緩沖池數據源oracleconnectionpooldatasource的對象
//實現了connectionpooldatasource接口
//2.使用此對象設置物理數據庫連接的屬性

myoracle.setservername("localhost");
myoracle.setdatabasename("myoracle");
myoracle.setportnumber(1521);
myoracle.serdrivertupe("thin");
myoracle.setuser("user");
myoracle.setpassword("password");

//3.創建緩沖的連接對象,它代表物理數據庫連接,可以使用它來請求數據庫連接實例
pooledconnection mypooledconnection= myoracle.getpooledconnection();
//pooledconnection mypooledconnection= myoracle.getpooledconnection("user","password");
//建立一次連接,可以多次請求連接實例,最后再關閉連接對象
//4.請求、使用、和最終關閉連接實例
connection myconnection=mypooledconnection.getconnection();
//使用
myconnection.close();
//5.程序結束之前,關閉pooledconnection對象
mypooledconnection.close();
/* 使用連接緩存-------------------
*/
/*1.創建oracleconnectioncacheimpl的對象,他實現了oracleconnectioncacheclass接口
這個接口擴展了oracledatasource類,可以使用這個類的所有屬性和方法
創建的最簡單的方法是使用默認的構造器*/
oracleconnectioncacheimpl myocci=new oracleconnectioncacheimpl();
myocci.setservername("localhost");
myocci.setdatabasename("myoracle");
myocci.setportnumber(1521);
myocci.setdrivertype("thin");
myocci.setuser("name");
myocci.setpassword("password");
//還可以使用現有的oraclepooldatasource對象為它設置屬性
//oracleconnectioncacheimpl myocci=new oracleconnectioncacheimpl(myoracle);
//或使用如下方法
//myocci.setconnectionpooldatasource(myoracle);
//2.請求、使用和關閉連接實例
connection myconnection=myocci.getconnection();
/*pooledconnection對象代表物理數據庫連接,默認情況下,調用myocci.getconnection()方法時,
myocci檢查緩存中是否存在pooledconnection對象,沒有就創建一個
然后,檢查pooledconnection對象是否有空閑的連接實例,沒有就創建
并返回pooledconnection對象的連接實例
*/
//在這里可以請求另一個連接實例
//connection myconnection2=myocci.getconnection();
//關閉連接實例
myconnection.close();
//程序結束前,應該關閉oracleconnectioncacheimpl對象,同時也就關閉了所有pooledconnection對象
myocci.close();
/*使用oci驅動程序實現連接緩沖池------------------------
優點:可以動態配置物理連接數量
每個連接實例可以可以有不同的用戶名密碼,可以使用一個緩沖池訪問不同的用戶模式
能夠有多個緩沖連接,thin只有一個數據庫連接
*/
oracleociconnectionpool myoocp=new oracleociconnectionpool();
/* myoocp.set……
……
……
*/
//以下可選的可以程序運行時動態設定的屬性
/*
properties myproperties=new properties();
myproperties.put(oracleociconnectionpool.connpool_min_limit,"5");
my …… .connpool_max_limit,"10");
…………… _increment,"2");
_timeout,"30");
_nowait,"true");
myoocp.setpoolconfig(myproperties);
*/
//建立連接實例
oracleociconnection myconnection=(oracleociconnection)myoocp.getconnection();
myconnection.close();
myoocp.close();

注冊會員,創建你的web開發資料庫,
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 遂溪县| 岱山县| 黑龙江省| 阳曲县| 安丘市| 舞阳县| 永仁县| 莒南县| 讷河市| 苗栗市| 田阳县| 吐鲁番市| 嘉义市| 镇原县| 外汇| 嘉祥县| 贞丰县| 辛集市| 桃园县| 新平| 弥渡县| 乐至县| 长汀县| 上虞市| 巴东县| 龙口市| 万全县| 新源县| 西丰县| 精河县| 溧阳市| 冷水江市| 松原市| 分宜县| 广河县| 平南县| 特克斯县| 潍坊市| 金阳县| 巴楚县| 资溪县|