易截截图软件、单文件、免安装、纯绿色、仅160KB

java数据库开发中两种注册oracle驱动的方式

一、利用Class.forName函数(用java开发B/S模式的程序) 1.代码如下: //注册驱动程序
public boolean connectDb() {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
return true;
} catch (ClassNotFoundException e) {
System.out.println(e);
return false;
}
}
//获取连接
private Connection getConn(){
try{
connection=DriverManager.getConnection(url,user,password);
}catch(Exception e){
System.out.println(e);
}
return connection;
}

2.前提条件:
  JDK的安装及环境变量的配置此处不再赘述;
  将oracle安装目录下的jdbc下的classes12.jar文件拷贝到tomcat目录下的common\lib\下面,否则会抛出ClassNotFoundException;
  url,user,password视开发环境而定
二、利用DriverManager.registerDriver函数(开发C/S模式的程序时)
1.代码如下:

public Connection connectDatabase(){
try{
DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
conn=DriverManager.getConnection("jdbc:oracle:thin:@172.16.1.52:1521:orcl","scott","test");
}catch (SQLException e){
System.out.println("caught:\n"+e);
System.exit(1);
}
return conn;
}

2.前提条件:
JDK的安装及环境变量的配置此处不再赘述;
import.java.sql.*;
三、一点说明
1.如果在第一种情况下用第二种情况提供的方法,编译不能通过。
2.如果在第二种情况下用第一种提供的方法编译能够通过,但是运行时会报oracle.jdbc.driver.OracleDriver,找不到的异常。
3.建议开发不同的模式,采用不同的注册驱动的方法。
4.加载驱动时都要捕获异常,当然可以都用Exception类,如果更详细的话,第一种情况下,捕获ClassNotFoundException,第二种情况下捕获SQLException异常,分别采取相应的处理方式。


相关文档:

解析Java类和对象的初始化过程

类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来分析的文章更是鲜有所见。
本文主要对类和对象初始化全过程进行分析,通过一个实际问题引入,将源代码转换成 JVM 字节码后, ......

SQL Server和Oracle的常用函数比较

---------数学函数 ---------------
  1.绝对值
  S:select abs(-1) value
  O:select abs(-1) value from dual
  2.取整(大)
  S:select ceiling(-1.001) value
  O:select ceil(-1.001) value from dual
  3.取整(小)
  S:select floor(-1.001) value
  O:select floor(-1.001) value from ......

[转帖]Java学习之路:不走弯路,就是捷径

[转帖]Java学习之路:不走弯路,就是捷径
2007-04-11 16:10
在ChinaITLAB导师制辅导中,笔者发现问得最多的问题莫过于"如何学习编程?Java该如何学习?"。类似的问题回答多了,难免会感觉厌烦,就萌生了写下本文的想法。到时候再有人问起类似的问题,我可以告诉他(她),请你去看看《Java学习之路》。拜读过台湾蔡学镛先 ......

activeMQ启动错误,引出的java endorsed目录问题。

在我机器上安装的是JDK6,下载activeMQ5.3启动时报错,提示jaxb包已经加载2.0版本无法加载2.1版本。
我通过网络搜索了一下发现,jaxb2.0是JDK发布时包含在rt.jar包中的。但是activeMQ5.3却需要2.1版本。这该如何处理?
总不能将rt.jar包解开,将jaxb2.1的类覆盖进去,再重新打包吧。这样太麻烦了。
再次进行网络搜索,发 ......

Java类被加载时执行的顺序问题

public class Parent
{
    //1
    static int a =  1;
    //2
    static
    {
        a = 10;
        System.out.println("parent static c ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号