《Java中连接MySql数据库的几种方法.docx》由会员分享,可在线阅读,更多相关《Java中连接MySql数据库的几种方法.docx(6页珍藏版)》请在三一办公上搜索。
1、JDBCJava中JDBC定义了 java与各种sql数据库之间的编程接口,JDBC API是一个统一的标准 应用程序编程接口,这样可以屏蔽异种数据库之间的差异。JDBC的工作原理JDBC与ODBC(OpenData Base Connectivity,开放式数据库连接)的作用非常类似,它在 应用程序和数据库之间起到了桥梁的作用。ODBC使用的特别广泛,在java中还提供了 JDBC-ODBC桥,能够在JDBC与ODBC之间进行转换,这样可以通过ODBC屏蔽不同种 数据库之间的差异。在JDK的包java.sql.*中定义了一系列的类、接口、异常以及这些类和 接口中定义的属性和方法,java的开
2、发人员通过一定的规则调用java.sql.*中的API就可以 实现对数据库管理系统的访问。JDBC的四种驱动1. JDBC-ODBC BridgeJDBC-ODBC Bridge可以访问一个ODBC数据源,但在执行Java程序的机器上必须安装 ODBC驱动,并作出配置,它的调用方式如下图:JSP/Serivces* JDBC-ODBC ODBCDatabase因为中间有个JDBC-ODBC,所以影响了执行效率。配置ODBC数据源的方法如下(以Mysql为例):第一步,打开控制面板一 管理工具- 数据源(ODBC)选择系统DSN,这一项默认应该是空的,我这里是已经配置好了一个数据源。第二步,点击
3、添加第三步,选择Mysql的ODBC驱动,点击完成。注:MySQL的ODBC驱动在系统中一般是找不到的,因为它不是系统默认自带的驱动, 所以,我们要自己安装我们所需要的MySQL的ODBC驱动。安装步骤如下: .下载安装包, 我们下载与自己系统相应的ODBC驱动Windows (x&6r 32-bit)f MSI Installer这里我们选择 (mysql-connector-odbc-5.2.-ansi-win32.msi) .我们下载,完成后会得到mysqlS. Ei安装jTrmysllcuriiLSctorodbc5. 2. 4_:=iTLEiwiii32.制i邺哗辨跚曜HH制Bffl
4、Bf_ .jmysqlcuriiLectorodbc5. 2. 4-wiri32. msimys ql c uriiLfi cnavica+9_ora_en. exe iNavi ca+_for_MySQL_l( ca+MySQLFrorLt. e: JBplsqldevS. zip3, 035 KB文件夹WindbiVE IrLEt:dll.2013-32013-4-3? 033 KB工 ns tall.2013-4-.1 Q9R T;TWi TPiR 7TP HkSS?n 1 -:1-类型:Windows Installer 软件包作者:Or acl e C or p or at i on
5、标题:Ins tall at i on D at ab as e主题:MySQL Connect or/ODBCThis irLEtaller dat at as e contairLS the logi c and data r e qui red toinstall MySQL Coimector/ODBC 5. 2 (w). 修改日期:2013-4-2 10:17 知%: 2.96 MB 点击安装,安装完成后,就可以找到我们需要的驱动了。 第四步,配置我们的数据源信息。第五步,点击Test测试成功,点击ok。测试失败,请检查配置问题。Connector/ODBC(* TCP/IP Ser
6、ver:Named Pipe:User:Password:Database:Details ODBC系统数据源存储了如何与指定数据提供程序连接的信息。系第六步,点击应用确定,这样我们的ODBC数据源就配置好了。卜面,我们写一段代码来测试下JDBC-ODBC连接 我们在已有的project中先新建一个package,名为jdbc,如下图:_ j avaweb01 srccouki ee qu:dl si grLur eCas effiffiffi.- l-:.E-.mj db C山 Jdb cC uriTie c t or. j ava rfi, JTtE Sys tern Libr:i-y S
7、utl JIlK 1.6.Ll_13 .XT.-.-rr.-.曰日匚 T r T-.-fc- .-.x- i i 在保重新建我们的测试类,名为JdbcConnector.java .在JdbcConnector.java中写如下代码:package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class JdbcConnector (priv
8、ate static Connection connection ;public static Connection getConnector() throws Exception(/Class.forName(org.git.mm.mysql.Driver);/Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);connection=DriverManager. getConnection (jdbc:odbc:DataSource , ro ot,root);return connection;public static void main(String
9、 args) throws SQLException, Exception (Statement statement= getConnector ().createStatement();ResultSet rSet=statement.executeQuery( select * from usertable);while (rSet.next() )(System.out.println(rSet.getInt(1)+ +rSet.getString(2);这其中的代码,获取Connection连接的代码是:connection=DriverManager. getConnection (
10、jdbc:odbc:DataSource , ro ot,root);这句代码是调用DriverManager的静态方法getConnection ()来构造我们的 JDBC-ODBC 连接。我们运行代码看下结果_ Problems+ ermirLated)1 JdbcCoriiLector Java Appli cati un C: Frogram 11 hello获取结果值与数据库中的完全一致,测试成功。2. JDBC Native Bridge这种方式需要在程序执行的机器上安装本地的且针对特定数据库的驱动程序,通过这个 程序把对数据库的JDBC调用转换为数据库的API调用。因此其性能比J
11、DBC-ODBC的 方式要更好一点,缺点就是需要安装驱动程序。它的调用方式如下:JSP/SerivcesJDBC-ODBCDatabase3. JDBC-NetWork Bridge这种方式不需要安装驱动程序,直接用JDBC通过网络连接数据库,因此与平台无关,效率较高,所以在internet的web开发中大量应用。它的调用方式如下:4. Pure Java JDBC DriveJava驱动程序运行在客户端上,因此客户端可以直接访问数据库,其体系结构特别简单, 但相应的安全性及程序的逻辑性不好,其调用方式如下:Java Application* Database下面是百度知道里面的一个回答,我引
12、用过来:1. JDBC-ODBC bridge (Open Database Connectivity,ODBC)桥驱动程序由 Sun 与 Merant 公 司联合开发,主要功能是把JDBC API调用转换成ODBC API调用,然后ODBC API调用针 对供应商的ODBC驱动程序来访问数据库,即利用JDBC- ODBC桥通过ODBC来存储数 据源Application JDBC-ODBC Bridge ODBC Driver Database2. Native-API Bridge驱动程序上层包装Java程序以与Java应用程序作沟通,将JDBC呼叫转为原生程序代码的 呼叫,下层为原生语言
13、(像是C、C+)来与数据库作沟通,下层的函式库是针对特定数据 库设计的,不若Type 1可以对ODBC架构的数据库作存取:Application Native-API Bridge Native Driver Database3: JDBC-middleware透过中间件来存取数据库,使用者不必安装特定的驱动程序,而是由驱动程序呼叫中间件, 由中间件来完成所有的数据库存取动作,然后将结果传回给驱动程序:Application JDBC-middleware middleware Database4:Pure Java Driver使用纯Java撰写驱动程序与数据库作沟通,而不透过桥接或中间件来存取数据库:Application Pure Java Driver Database