最近公司准备做一个小项目,db用sql server 2000,开发平台为java2,开发工具使用jbuilder9,所以我仔细分析了一下在此情况下的数据库连接方法。其实大家都知道,java与db的连接主要分为四种类型:
(1)type1:使用jdbc-odbc桥实现db连接,此方法适合于在windows平台上使用,缺点是不能在applet上使用,如果要在客户端实现db通信,那么必须设置odbc数据源。
(2)type2:作用native-api桥实现db连接,该方法需在客户端安装db开发商软件,不利于跨平台。
(3)type3:使用net-protocol实现db连接,该方法需要第三方服务器。
(4)type4:使用native-protocol fully java technology-enabled技术实现db连接,不需要中间服务器,与db通信的整个过程均由java语言实现。
由上可知我们最常使用的便是第一种和第四种方法,在第一种方法中,建立jdbc-odbc的关键是创建odbc数据源,编写jdbc-odbc的数据库连接就是一句话:jdbc:odbc:odbcname。在第四种方法中,建立jdbc连接的关键是编写url,编写url的语法格式是 jdbc:<protocol>:<databasename>。
建立db连接的一般方法步骤如下:
(1)注册class,使用的方法是class.forname(typestring)。
(2)声明连接类connection。
(3)由drivermanager类的getconnection(url,user,password)方法创建连接(此方法为static方法)。其url的编写是关键,语法格式为:
jdbc:<protocol>:<databasename>protocol:代表定义db的连接机制databasename:代表db的名字
关系到具体的实现,会根据dbms的不同,有所区别,现在以sql server 2000为例来实现。在此选用第四种方法,主要分为以下几个步骤:
1、安装sql server 2000,并安装jdbc for sql server 2000。
2、在jbuilder9新建一个项目,并为项目属性设置好需要的类包。具体步骤为:tool->configure libraries…->new打开新类库向导,在name中命一个名字,如sqlserverjdbc,然后将jdbc for sql server 2000安装目录下lib目录中的三个.jar文件加入到此类包中,确认退出。然后在project->project properties->path->required libraries中加入上面那个新建的类包即可。
3、编写db连接程序,或以javabean的形式,在这里,仅以示例给出,源文件如下:
import java.sql.*; public class sqlsdemotest{ string conntype="com.microsoft.jdbc.sqlserver.sqlserverdriver"; string dburl="jdbc:microsoft:sqlserver://localhost:1433;databasename=demo"; string user="sa"; string pass="123"; connection conn; public connection getconnection(){ try{ class.forname(conntype); connection conn=drivermanager.getconnection(dburl,user,pass); system.out.println("db connection success."); } catch(exception ex){ ex.printstacktrace(); } return conn; } public sqlsdemotest(){ conn=this.getconnection(); if(conn!=null) try{ conn.close(); } catch(exception e){ e.printstacktrace(); } } public static void main(string[] args){ new sqlsdemotest(); } }
另外,在此还提出一个思路,可以利用javabean来创建一处通用的db连接的类,通过修改db的名字、url、用户名和密码便可建立对不同的db的连接。在此就暂不实现具体的代码了,等哪天有空再来实现吧,:)
