2023学年完整公开课版DriverManager_第1页
2023学年完整公开课版DriverManager_第2页
2023学年完整公开课版DriverManager_第3页
2023学年完整公开课版DriverManager_第4页
2023学年完整公开课版DriverManager_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

DriverManager北京电子科技职业学院目录Driver接口DriverManager类JDBCURL任何一种数据库驱动程序都提供一个java.sql.Driver接口的驱动类,在加载某个数据库驱动程序的驱动类时,都创建自己的实例对象并向java.sql.DriverManage类注册该实例对象。数据库驱动加载在DriverManage类的执行过程如图所示。

Driver接口简介Driver接口简介

Driver接口由数据库厂家提供,作为java开发人员,只需要使用Driver接口就可以了。在编程中要连接数据库,必须先装载特定厂商的数据库驱动程序,不同的数据库有不同的装载方法。如:装载MySql驱动:Class.forName("com.mysql.jdbc.Driver");装载Oracle驱动:Class.forName("oracle.jdbc.driver.OracleDriver");Driver接口简介

每种数据库的驱动程序都应该提供一个实现java.sql.Driver接口的类,简称Driver类,在加载Driver类时,应该创建自己的实例并向java.sql.DriverManager类注册该实例。通常情况下通过java.lang.Class类的静态方法forName(StringclassName),加载要连接数据库的Driver类,该方法的入口参数为要加载Driver类的完整包名。成功加载后,会将Driver类的实例注册到DriverManager类中,如果加载失败,将抛出ClassNotFoundException异常,即未找到指定Driver类的异常。java.sql.DriverManager类负责管理JDBC驱动程序的基本服务,是JDBC的管理层,作用于用户和驱动程序之间,负责跟踪可用的驱动程序,并在数据库和驱动程序之间建立连接。另外,DriverManager类也处理诸如驱动程序登录时间限制及登录和跟踪消息的显示等工作。成功加载Driver类并在DriverManager类中注册后,DriverManager类即可用来建立数据库连接。当调用DriverManager类的getConnection()方法请求建立数据库连接时,DriverManager类将试图定位一个适当的Driver类,并检查定位到的Driver类是否可以建立连接。如果可以,则建立连接并返回,如果不可以,则抛出SQLException异常。DriverManager类提供的常用方法如下表所示。DriverManager类简介DriverManager类提供的常用方法方法名称功能描述getConnection(Stringurl,Stringuser,Stringpassword)为静态方法,用来获得数据库连接,有3个入口参数,依次为要连接数据库的URL、用户名和密码,返回值类型为java.sql.ConnectionsetLoginTimeout(intseconds)为静态方法,用来设置每次等待建立数据库连接的最长时间setLogWriter(java.io.PrintWriterout)为静态方法,用来设置日志的输出对象println(Stringmessage)为静态方法,用来输出指定消息到当前的JDBC日志流JDBCURL的标准由三部分组成,各部分间用冒号分隔。jdbc:<子协议>:<子名称>协议:JDBCURL中的协议总是jdbc子协议:子协议用于标识一个数据库驱动程序子名称:一种标识数据库的方法。子名称可以依不同的子协议而变化,用子名称的目的是为了定位数据库提供足够的信息JDBCURL常用的JDBC驱动程序名称和数据库URLRDBMSJDBC驱动程序名称URL格式MySQLcom.mysql.jdbc.Driverjdbc:mysql://hostname/databaseNameORACLEoracle.jdbc.driver.OracleDriverjdbc:oracle:thin:@hostname:portNumber:databaseNamePostgreSQLorg.postgresql.Driverjdbc:postgresql://hostname:port/dbnameDB2.DB2Driverjdbc:db2:hostname:portNumber/databaseNameSybasecom.sybase.jdbc.SybDriverjdbc:sybase:Tds:hostname:portNumber/databaseName谢谢观看北京电子科技职业学院DriverManager类扩展北京电子科技职业学院目录DriverManager类的作用DriverManager类注册的方式实例负责追踪可用的驱动程序;在数据库和相应驱动程序之间建立连接;处理驱动程序登录时间限制及登录;跟踪消息的显示等事务。DriverManager类的作用用DriverManager类的作用1.追踪有用的驱动程序

DriverManager类中一系列驱动类通过调用DriverManager类中的registerDriver()方法进行了注册。程序员将不用直接调用DriverManager类中的registerDriver()方法;而是在加载驱动程序时,由驱动程序自动调用并加载驱动类,然后自动在DriverManager类中注册。2.建立连接加载驱动类并在DriverManager类中注册后,即可用来与数据库建立连接。当调用DriverManager类中getConnection()方法发出连接请求时,DriverManager类将检查每个驱动程序,并查看该类是否可以建立连接。(1)通过Class静态类中的forName()方法进行调用。该方法通过Java反射技术加载驱动程序类。由于与外部设置无关,因此推荐使用这种加载驱动程序的方法。代码如下,其中“db.Driver”为数据库的驱动名称:Class.forName("db.Driver");(2)通过将数据库驱动名称添加到java.lang.System类中的jdbc.drivers属性中。该方式是一个由DriverManager类加载的驱动程序类名的列表,并用冒号(:)分隔。

在上述两种方式中,新加载的驱动类都通过调用DriverManager类中的registerDriver()方法进行自动注册。出于安全方面的因素,JDBC管理层将跟踪哪个类加载器提供哪个驱动程序。这样,当DriverManager类打开连接时,它仅使用本地文件系统或与发出连接请求的代码相同的类加载器提供的驱动程序。

DriverManager类注册的方式实例Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");Stringurl="jdbc:microsoft:sqlserver:/

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论