使用 Microsoft JDBC Driver for SQL Server 连接到SQL Server的5种方式
2015-06-07 20:31
543 查看
最近在学习java,可是在与数据库建立连接这块儿老出错。因此,在阅读JDBC官方帮助文档时,看到一些非常有用的资料,真有一点“柳暗花明又一村”的味道。希望能将自己的总结记录下来,分享给大家,共同努力,一起学习。
步入正题,下面介绍使用 Microsoft JDBC Driver for SQL Server 连接到SQL Server的几种方式,以及其实例。
1、使用DriverManager类建立连接
这是创建到SQL Server 数据库最简单的方法,具体步骤:
——(1)加载JDBC驱动程序
——(2)调用DriverManager类的getConnection方法。
【通过查询API可以看到,DriverManager类的getConnection方法重载了多种形式:
①static Connection getConnection(String url)
②static Connection getConnection(String url ,Propertise info)
③static Connection getConnection(String url ,String user , String password)
都是 用来建立到给定数据库URL的连接。
】
示例:
final static String strDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver" ;
final static String conurl = "jdbc:sqlserver://localhost:1433;database = databasename ; integratedSecurity = true" ;//此处采用集成验证方式
Class.forName(strDriver);//加载驱动程序
Connection con = DriverManager.getConnection(conurl);
此技术使用驱动程序列表中第一个可以与给定url成功连接的可用驱动程序,来创建数据库连接。
[注:使用 sqljdbc4.jar 类库时,应用程序无需使用 Class.forName 方法显示注册或加载驱动程序。调用
DriverManager 类的 getConnection 方法时,会从已注册的 JDBC Driver 集中找到相应的驱动程序。]
2、使用SQLServerDriver类创建连接
若要为DriverManager指定驱动程序列表中的特定驱动程序,就可以使用SQLServerDriver类的connect方法来创建数据库连接。
①得到一个Driver实例
②调用Driver的connect方法
【查询API文档,Driver是一个接口. public interface Driver
每个驱动程序类都必须实现的接口
每个驱动程序都应该提供一个实现 Driver 接口的类。
DriverManager 会试着加载尽可能多的它可以找到的驱动程序,然后,对于任何给定连接请求,它会让每个驱动程序依次试着连接到目标 URL。
强烈建议每个 Driver 类应该是小型的并且是单独的,这样就可以在不必引入大量支持代码的情况下加载和查询 Driver 类。
在加载某一 Driver 类时,它应该创建自己的实例并向 DriverManager 注册该实例。这意味着用户可以通过调用以下程序加载和注册一个驱动程序
[/code]
】
示例:
Driver driver = (Driver) Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
final static String conurl = "jdbc:sqlserver://localhost:1433;database = databasename ; integratedSecurity = true" ;//此处采用集成验证方式
Connection con = d.connect(conurl , new Properties());
3、使用SQLServerDataSource类创建
如果使用SQLServerDataSource类创建连接,可以
①使用此类的各种setter方法,设置必要的参数
②调用getConnection方法
【查询API,表示通过使用
SQLServerConnection 对象特定于连接至 SQL Server 数据库的属性列表。】
示例:
SQLServerDataSource ds = new SQLServerDataSource();
ds.setUser("UserName");
ds.setPassword("*****");
ds.setServerName("localhost");
ds.setPortNumber(1433);
ds.setDatabaseName("AdventureWorks");
Connection con = ds.getConnection();
----------------------------------------------------------------------------------------------------------
4、连接到远程服务器
String url = "jdbc:sqlserver://myserver; integratedSecurity = true";
特定端口的连接:
String url = "jdbc:sqlserver://myserver:portNumber; integratedSecurity = true";
5、使用连接池连接
使用的类
com.microsoft.sqlserver.jdbc.SQLServerConnectionPoolDataSource
实现
javax.sql.ConnectionPoolDataSource
[注:连接应该显式的关闭,以便从池中获得最大利益。如果应用程序显式地关闭连接,则池实现可立即重新使用此连接。如果连接未关闭,则其他应用程序无法重新使用它。应用程序可使用 finally
构造来确保关闭已池化的连接,即使发生异常。]
本文就介绍到这里。且行且思考吧!
步入正题,下面介绍使用 Microsoft JDBC Driver for SQL Server 连接到SQL Server的几种方式,以及其实例。
1、使用DriverManager类建立连接
这是创建到SQL Server 数据库最简单的方法,具体步骤:
——(1)加载JDBC驱动程序
——(2)调用DriverManager类的getConnection方法。
【通过查询API可以看到,DriverManager类的getConnection方法重载了多种形式:
①static Connection getConnection(String url)
②static Connection getConnection(String url ,Propertise info)
③static Connection getConnection(String url ,String user , String password)
都是 用来建立到给定数据库URL的连接。
】
示例:
final static String strDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver" ;
final static String conurl = "jdbc:sqlserver://localhost:1433;database = databasename ; integratedSecurity = true" ;//此处采用集成验证方式
Class.forName(strDriver);//加载驱动程序
Connection con = DriverManager.getConnection(conurl);
此技术使用驱动程序列表中第一个可以与给定url成功连接的可用驱动程序,来创建数据库连接。
[注:使用 sqljdbc4.jar 类库时,应用程序无需使用 Class.forName 方法显示注册或加载驱动程序。调用
DriverManager 类的 getConnection 方法时,会从已注册的 JDBC Driver 集中找到相应的驱动程序。]
2、使用SQLServerDriver类创建连接
若要为DriverManager指定驱动程序列表中的特定驱动程序,就可以使用SQLServerDriver类的connect方法来创建数据库连接。
①得到一个Driver实例
②调用Driver的connect方法
【查询API文档,Driver是一个接口. public interface Driver
每个驱动程序类都必须实现的接口
每个驱动程序都应该提供一个实现 Driver 接口的类。
DriverManager 会试着加载尽可能多的它可以找到的驱动程序,然后,对于任何给定连接请求,它会让每个驱动程序依次试着连接到目标 URL。
强烈建议每个 Driver 类应该是小型的并且是单独的,这样就可以在不必引入大量支持代码的情况下加载和查询 Driver 类。
在加载某一 Driver 类时,它应该创建自己的实例并向 DriverManager 注册该实例。这意味着用户可以通过调用以下程序加载和注册一个驱动程序
[code]Class.forName("foo.bah.Driver")
[/code]
】
示例:
Driver driver = (Driver) Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
final static String conurl = "jdbc:sqlserver://localhost:1433;database = databasename ; integratedSecurity = true" ;//此处采用集成验证方式
Connection con = d.connect(conurl , new Properties());
3、使用SQLServerDataSource类创建
如果使用SQLServerDataSource类创建连接,可以
①使用此类的各种setter方法,设置必要的参数
②调用getConnection方法
【查询API,表示通过使用
SQLServerConnection 对象特定于连接至 SQL Server 数据库的属性列表。】
示例:
SQLServerDataSource ds = new SQLServerDataSource();
ds.setUser("UserName");
ds.setPassword("*****");
ds.setServerName("localhost");
ds.setPortNumber(1433);
ds.setDatabaseName("AdventureWorks");
Connection con = ds.getConnection();
----------------------------------------------------------------------------------------------------------
4、连接到远程服务器
String url = "jdbc:sqlserver://myserver; integratedSecurity = true";
特定端口的连接:
String url = "jdbc:sqlserver://myserver:portNumber; integratedSecurity = true";
5、使用连接池连接
使用的类
com.microsoft.sqlserver.jdbc.SQLServerConnectionPoolDataSource
实现
javax.sql.ConnectionPoolDataSource
[注:连接应该显式的关闭,以便从池中获得最大利益。如果应用程序显式地关闭连接,则池实现可立即重新使用此连接。如果连接未关闭,则其他应用程序无法重新使用它。应用程序可使用 finally
构造来确保关闭已池化的连接,即使发生异常。]
本文就介绍到这里。且行且思考吧!
相关文章推荐
- mysqldump Got error: 1449
- Mysql 事务
- mysql常用操作
- java对redis的基本操作
- JDBC连接数据库
- python cx_Oracle 模块安装记录
- mac下mysql
- Dal:基于Mongodb和redis的Python持久库
- Scala连接mariaDB笔记
- mariaDB中的DATE_FORMAT() 函数用法笔记
- 详解Redis源码中的部分快速排序算法(pqsort.c)
- mac 下卸载mysql的方法
- Memcache存储大量数据的问题
- 使用MVC写模式jsp连接到数据库操作
- c#数据库的两种访问方式总结
- sqlplus登录、连接命令
- 数据库 数据库诊断信息
- Redis常用命令
- T-SQL编程规范
- 数据库编程起别名的3中方式