jsp/java代码中用jdbc驱动代替jdbc-odbc桥连接SQL Server数据库

时间:2022-06-28 20:37:13

甲骨文公司主要技术人员、JDBC规范领导者Lance Andersen在博客中称,从Java SE 8起,JDK中将不再包含JDBC-ODBC桥。

JDBC-ODBC桥是Java提供的一种基于两层模型的JDBC技术,使用JDBC-ODBC桥能对多种ODBC数据源进行灵活而高效的访问。它作为sun.jdbc.odbc包实现,其中包含一个用来访问ODBC的本地库。
jsp/java代码中用jdbc驱动代替jdbc-odbc桥连接SQL Server数据库

JDBC-ODBC桥提供了对JDBC 2.0的有限支持,不支持较新版本的JDBC规范。JDBC-ODBC桥被认为是一个过渡的、不建议使用的产品,仅包含在JDK中,JRE中并未内置。

Lance建议开发者使用数据库商提供的JDBC驱动,或使用一个商业JDBC驱动,来代替JDBC-ODBC桥。

新接触java的很多小伙伴们在自己爱机上配置的是jdk 1.8的版本,在学习jsp时,怎样将自己的java web项目连接到本地数据库也是个头疼的问题,使用windows系统自带的jdbc-odbc桥来连接是一个很好的办法,但是1.8开始就不支持,只能够用驱动来连接。
jsp/java代码中用jdbc驱动代替jdbc-odbc桥连接SQL Server数据库

1、首先需要在官网上下载驱动。
jsp/java代码中用jdbc驱动代替jdbc-odbc桥连接SQL Server数据库
jsp/java代码中用jdbc驱动代替jdbc-odbc桥连接SQL Server数据库
下载好后直接执行就行。
jsp/java代码中用jdbc驱动代替jdbc-odbc桥连接SQL Server数据库

第二种方法是,下载好了的在传送门里面 ↓ ↓ ↓ ↓
http://pan.baidu.com/s/1mh62lMo

个人建议还是在官网上面下载,官网下载时候有个 安装说明之类的,在上面的截图里面有,因为里面jar的包有几个,对于那个版本的jdk使用。

好了 现在驱动已经下载好了,只需要在myeclipse或者eclipse里面建立project(java project或者web project)

右键单击项目名 选择 “Build Path”——“configure Build Path”
jsp/java代码中用jdbc驱动代替jdbc-odbc桥连接SQL Server数据库

根据下面截图,选择“Libraries”——”Add External JARs”
jsp/java代码中用jdbc驱动代替jdbc-odbc桥连接SQL Server数据库

选择jar版本(在弹出的窗口中找到之前安装jdbc驱动的位置)
如果安装的jdk版本比较高,就选择sqljdbc42,原因见官网文档说明
jsp/java代码中用jdbc驱动代替jdbc-odbc桥连接SQL Server数据库
选择好之后,一直下一步或者ok就好了
在自己所建的project里面能够看到
jsp/java代码中用jdbc驱动代替jdbc-odbc桥连接SQL Server数据库
jdbc驱动就配置好了,接下来只需要代码就行了

package sqlServer;

import java.sql.*;
public class selectSQL {
public static void main(String[] args) throws Exception{
String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";
String url="jdbc:sqlserver://localhost:1433;DatabaseName=Test";
String user="sa";
String password="123456";
// Test为数据库名,端口号可以在sql server配置管理器 的Ip属性里面查看
Class.forName(driverName);
Connection connection=DriverManager.getConnection(url, user, password);
// 数据库连接用户名为sa,密码:123456
Statement statement=connection.createStatement();

String sql="SELECT sno,name,broTime FROM dbo.XSB";
ResultSet resultSet=statement.executeQuery(sql);
while (resultSet.next()) {
String sno=resultSet.getString("sno");
String name=resultSet.getString("name");
String broTime=resultSet.getString("broTime");
System.out.println(sno+" "+name+" "+broTime);
}
statement.close();
connection.close();
}
}