Java连接Oracle数据库的问题.......

Nirvana0 2002-02-05 11:25:24
现在我有一个很急的任务,系统要改用Oracle数据库了,没有时间了,请问谁有以前的例子给我参考一下呢,对了数据库连接不用数据桥的,哪里下载Oracle的驱动呢???
...全文
144 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
jusan 2002-02-18
  • 打赏
  • 举报
回复
gz
Nirvana0 2002-02-06
  • 打赏
  • 举报
回复
gaoding
pengji 2002-02-05
  • 打赏
  • 举报
回复
还是捻上来吧!
package com.hzs.order;

import java.io.IOException;
import java.sql.*;
import java.util.Vector;
import java.util.*;

public class DBHandle {
// Field
private Vector result = new Vector();
private Connection conn = null;

// Construct
public DBHandle() {
}

// Connect to database
public void connect() throws DBException, IOException {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:system/828112@192.9.200.50:1521:mydb");
} catch(ClassNotFoundException E) {
throw new DBException("Connnect: " + String.valueOf(E.getMessage()));
} catch(SQLException E) {
throw new DBException("SQLException: " + String.valueOf(E.getMessage()));
} catch(Exception E) {
throw new DBException("Exception: " + String.valueOf(E.getMessage()));
}
}

public void transaction() throws DBException, IOException {
try {
conn.setAutoCommit(false);
} catch(SQLException E) {
throw new DBException("SQLException: " + String.valueOf(E.getMessage()));
} catch(Exception E) {
throw new DBException("Exception: " + String.valueOf(E.getMessage()));
}
}

// Executes a SQL statement that returns a single ResultSet.
public Vector select(String strQuery) throws DBException, IOException {
result = new Vector();

try {
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(strQuery);
ResultSetMetaData rsmd = rs.getMetaData();
int FieldNum = rsmd.getColumnCount();

while (rs.next()) {
for (int i = 1; i <= FieldNum; i ++)
result.addElement(rs.getString(i));
}

rs.close();
stmt.close();
} catch(SQLException E) {
throw new DBException("SQLException: " + String.valueOf(E.getMessage()));
} catch(Exception E) {
throw new DBException("Exception: " + String.valueOf(E.getMessage()));
}
return result;
}

// Executes an SQL INSERT, UPDATE or DELETE statement.
public int update(String strUpdate) throws DBException, IOException {
int stmtInt=-1;
try {
Statement stmt = conn.createStatement();
stmtInt = stmt.executeUpdate(strUpdate);
stmt.close();
} catch(SQLException E) {
throw new DBException("SQLException: " + String.valueOf(E.getMessage()));
} catch(Exception E) {
throw new DBException("Exception: " + String.valueOf(E.getMessage()));
}
return stmtInt;
}

// commit
public void commit() throws DBException, IOException {
try {
conn.commit();
} catch(SQLException E) {
throw new DBException("SQLException: " + String.valueOf(E.getMessage()));
} catch(Exception E) {
throw new DBException("Exception: " + String.valueOf(E.getMessage()));
}
}

// rollback
public void rollback() throws DBException, IOException {
try {
conn.rollback();
} catch(SQLException E) {
throw new DBException("SQLException: " + String.valueOf(E.getMessage()));
} catch(Exception E) {
throw new DBException("Exception: " + String.valueOf(E.getMessage()));
}
}

// close
public void close() throws DBException, IOException {
try {
conn.close();
} catch(SQLException E) {
throw new DBException("SQLException: " + String.valueOf(E.getMessage()));
} catch(Exception E) {
throw new DBException("Exception: " + String.valueOf(E.getMessage()));
}
}

public static String toChinese(String strValue) {
try {
if (strValue == null)
return null;
else
return new String(strValue.getBytes("8859_1"), "gb2312");
} catch(Exception e) {
return null;
}
}

public static float toFloat(String str){
return Float.parseFloat(str);
}
}




package com.hzs.order;

public class DBException extends Exception {
public DBException(String desc) {
super(desc);
}
}
fhaibo 2002-02-05
  • 打赏
  • 举报
回复
qq
fhaibo 2002-02-05
  • 打赏
  • 举报
回复
g z
wangtaoyy 2002-02-05
  • 打赏
  • 举报
回复
如果你安装了oracle客户端,在oracle_dir/jdbc/lib有jdbc驱动程序

兄弟们不要再使用,这种方式访问数据库了:
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
DriverManager.getConnection(dbUrlStr,usrname,pwds);

尽量使用数据源
InitialContext ic = new InitialContext();
datasource = (DataSource) ic.lookup(DatasourceJNDI);
datasource.getConnection()


laughing 2002-02-05
  • 打赏
  • 举报
回复
g z
Nirvana0 2002-02-05
  • 打赏
  • 举报
回复
没有啊?
pengji 2002-02-05
  • 打赏
  • 举报
回复
已发出,请查收!
Nirvana0 2002-02-05
  • 打赏
  • 举报
回复
谢谢。。。我的Email是 joo_ky@263.net
DragonFly-9 2002-02-05
  • 打赏
  • 举报
回复
我用来连接oracle的一段代码你参考一下:
Connection getConnect(String host,String usrname,String pwds)
{
String dbUrlStr = "jdbc:oracle:thin:" + host;//host="@[主机]:[端口]:[数据库]"
try{
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
return DriverManager.getConnection(dbUrlStr,usrname,pwds);
}catch(Exception e)
{
System.out.println(e.getMessage());
return null;
}
}
oracle提供的那个连接包你自己找找。
pengji 2002-02-05
  • 打赏
  • 举报
回复
装完ORACLE后就有驱动了,你只要设置好CLASSPATH就可以了!
读写ORACLE的BEAN我有,你要的话,给我你的MAIL!
bbc218888 2002-02-05
  • 打赏
  • 举报
回复
uupupupuiugiugiugiupupupupup up
bbc218888 2002-02-05
  • 打赏
  • 举报
回复
String dbUrlStr = "jdbc:oracle:thin:" + host;//host="@[主机]:[端口]:[数据库]"
try{
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
return DriverManager.getConnection(dbUrlStr,usrname,pwds);
}catch(Exception e)
{
System.out.println(e.getMessage());
return null;
}
}
DragonFly-9 2002-02-05
  • 打赏
  • 举报
回复
楼上的huyuefox(huyuefox):
我这儿需要使用webshpere的连接池来连接来连接Sybase数据库但我不知道如何使用能否赐教?
最好有源代码可以参考。
我的email:jieyf_flyhorse@263.net
huyuefox 2002-02-05
  • 打赏
  • 举报
回复
以上都是和数据库单独连接,建议用连接池来连接。这样速度比较快。也是现在流行的方法
fhaibo 2002-02-05
  • 打赏
  • 举报
回复
关注
关注

2,596

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧