当前位置:编程学习 > JSP >>

JBuilder9+SQL SERVER 2000数据库连接技巧

最近公司准备做一个小项目,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的连接。在此就暂不实现具体的代码了,等哪天有空再来实现吧,:)

补充:Jsp教程,Java技巧及代码
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,