日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

java连接本地oracle数据库_JAVA连接oracle数据库的三种方式

發(fā)布時(shí)間:2024/9/19 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java连接本地oracle数据库_JAVA连接oracle数据库的三种方式 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1 傳統(tǒng)方式連接數(shù)據(jù)庫(效率較低)

此方法連接數(shù)據(jù)庫,其性能、可靠性與穩(wěn)定性隨著用戶訪問量的增加逐漸下降,跟蹤測(cè)試表明,其根本問題與Connection對(duì)象的創(chuàng)建有關(guān)。不過在這里還是講一下此方法的實(shí)現(xiàn):添加記錄到數(shù)據(jù)庫表中

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

String driver = "oracle.jdbc.driver.OracleDriver";

String url = "jdbc:oracle:thin:@192.168.1.3:1521:ora92";

String username = "scott";

String password = "tiger";

String sql = "insert into users(username,password) values (?,?)";

try {

Class.forName(driver);??????? //oracle.jdbc.driver.OracleDriver();

Connection conn = DriverManager.getConnection(url, username,password);

PreparedStatement ps = conn.prepareStatement(sql);??? //Statement stat=conn.createStatement();

ps.setString(1, "張三");

ps.setString(2, "lisi");

ps.executeUpdate();

ps.close();

conn.close();

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

2 使用JDBC數(shù)據(jù)源連接池方式連接數(shù)據(jù)庫(效率高)

用這種方式連接數(shù)據(jù)庫之前,首先需要配置TOMCAT服務(wù)器目錄下的文件\tomcat5\conf\context.xml文件:

WEB-INF/web.xml

maxActive="100" maxIdle="30" maxWait="10000" username="scott"?? password="tiger"

driverClassName="oracle.jdbc.OracleDriver"

url="jdbc:oracle:thin:@192.168.1.3:1521:ora92"/>

配置完后將oracle驅(qū)動(dòng)程序類classes12.jar拷貝到\tomcat5\common\lib目錄下即可。在這里強(qiáng)調(diào)一下這個(gè)問題,我就是遇到這種問題的,最后就是這樣給解決的。之前我用了ojdbc5.jar驅(qū)動(dòng)類文件總是不能夠建立連接的,而且出現(xiàn)這樣的問題:Cannot create JDBC oracle driver of class '' for connect URL 'jdbc:oracle:thin:@192.168.1.3:1521:ora92'"。希望這篇文章給讀者有點(diǎn)啟發(fā)。我的QQ號(hào)碼:89262840

import javax.naming.Context;

import javax.naming.InitialContext;

import javax.sql.DataSource;

String sql = "insert into users(username,password) values(?,?)";

String username = request.getParameter("username");

try {

Context context=new InitialContext();

DataSource ds=(DataSource)context.lookup("java:/comp/env/jdbc/oracle");

Connection conn=ds.getConnection();

PreparedStatement ps = conn.prepareStatement(sql);

ps.setString(1, StringUtil.filterHtml(username));

ps.setString(2, StringUtil.filterHtml(request.getParameter("password")));

result = ps.executeUpdate();

ps.close();

conn.close();

} catch (NamingException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

3 使用組件的方式連接數(shù)據(jù)庫

本文主要以Commons DbUtils組件來連接數(shù)據(jù)庫。它將JDBC中的一些類進(jìn)行了二次封裝,它不象hibernate(ORMapping)那樣將JAVA對(duì)象與數(shù)據(jù)庫映射。首先將oracle驅(qū)動(dòng)類文件與Commons DbUtils組件的JAR文件一起引入到項(xiàng)目中。

String sql = "insert into users(username,password) values(?,?)";

String username = request.getParameter("username");

String param[]={StringUtil.filterHtml(username),StringUtil.filterHtml(request.getParameter("password"))

};

try {

Context initContext = new InitialContext();

DataSource ds = (DataSource) initContext.lookup("java:/comp/env/jdbc/oracleds");

QueryRunner qr = new QueryRunner(ds);

result = qr.update(sql, param);

} catch (NamingException e) { ????? // TODO Auto-generated catch block ????? e.printStackTrace(); ???? } catch (SQLException e) { ??????? e.printStackTrace(); ??? }

總結(jié)

以上是生活随笔為你收集整理的java连接本地oracle数据库_JAVA连接oracle数据库的三种方式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。