数据库 —— 应用程序与数据库的连接

目录
  1. ODBC 与 JDBC 是什么?
  2. 具体实例入门
1、ODBC 与 JDBC 是什么?[Link]

JDBC, 全称为Java DataBase Connectivity standard, 它是一个面向对象的应用程序接口(API), 通过它可访问各类关系数据库。JDBC也是java核心类库的一部分。

JDBC的最大特点是它独立于具体的关系数据库。与ODBC (Open Database Connectivity)类似, JDBC API 中定义了一些Java类分别用来表示与数据库的连接(connections), SQL语句(SQL statements), 结果集(result sets)以及其它的数据库对象, 使得Java程序能方便地与数据库交互并处理所得的结果。使用JDBC, 所有Java程序(包括Java applications , applets和servlet)都能通过SQL语句或存储在数据库中的过程(stored procedures)来存取数据库。

要通过JDBC来存取某一特定的数据库,必须有相应的JDBC driver,它往往是由生产数据库的厂家提供,是连接JDBC API与具体数据库之间的桥梁。

通常,Java程序首先使用JDBC API来与JDBC Driver Manager交互,由JDBC Driver Manager载入指定的JDBC drivers, 以后就可以通过JDBC API来存取数据库。

ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。 

一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access还是Oracle数据库,均可用ODBC API进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。 

 

2、具体实例入门

这里提供一个具体的例子,step by step ,为刚刚接触数据库的人提供一个更为直观感性的认识。

我们具体使用 java应用程序连接 mysql 数据库,整体步骤如下:

1、java 开发环境的准备
2、安装 java IDE以便开发 (如 Eclipse )
3、安装 mysql 数据库
4、下载 数据库对应的 jdbc driver
5、将 jdbc driver 库导入到程序环境中
6、连接测试 

1、java 开发环境的准备:配置java开发环境——JDK的配置。 步骤网上很多比如:点这里

2、搜索下载合适你系统(64bit/32bit)的IDE, 比如 Eclipse :点这里去搜索

3、下载并安装mysql数据库,各个平台官方下载与安装教程 

  按照安装教程,设置好默认用户(root)的密码,安装完毕后,可以打开终端命令行登录数据库:(更加具体的使用,请访问 官方使用手册 )

mysql -u root -p

      创建待会要测试的数据库, 并创建要测试的表:

create database test;
use test;
create table temp(name varchar(20), password varchar(20));

这时应该可以使用语句查看到你的表了:

show tables;     // 查看当前数据库所有的表
describe temp;  // 查看表的具体字段信息

select * from temp;  // 查看表的数据

4、下载mysql 提供的 jdbc driver ,点这里 ( Windows下载 (mysql-connector-java-5.1.40.zip) Linux下载: (mysql-connector-java-5.1.40.tar.gz))

     下载好后解压,任意路径都可以,不要以后随便给删掉就可以。

5、将jdbc driver 库导入到Eclipse 环境中

    1)在 Eclipse 中建立用户库(以后不同的项目,要连接数据库,直接为工程加入这个用户库就好了):

   打开Eclipse,进入菜单windows->prefrences,进入Java->Build Path->user libraries,选择新建,命名为mysql,路径为:.../mysql-connector-java-5.X.XX-bin.jar

  2) 创建java project,命名为testmysql,右键项目名称,选择Build Path->Add libraries,从列表中选择user library,在next界面中选择上面部署的mysql安装包即可;

6、现在可以开始写代码连接刚才的数据库了。在testmysql工程下新建class,命名为Test.java文件:

public class Test {

    public static void main(String args[]) {
        try {
            Class.forName("com.mysql.jdbc.Driver"); // 加载MYSQL JDBC驱动程序
            System.out.println("Success loading Mysql Driver!");
        } catch (Exception e) {
            System.out.print("Error loading Mysql Driver!");
            e.printStackTrace();
        }
        try {
            Connection connect = DriverManager.getConnection(
                    "jdbc:mysql://localhost:3306/test", "root", "XXXXXXX"); //test 为你的数据库名称,XXXXXXX 这里改为你自己的密码
            System.out.println("Success connect Mysql server!");
            
       //插入一行数据 PreparedStatement Statement
= connect .prepareStatement("INSERT INTO temp(name,password) VALUES(?,?)"); Statement.setString(1, "name3"); Statement.setString(2, "password3"); Statement.executeUpdate(); // 获取temp表的数据来打印 Statement stmt = connect.createStatement(); ResultSet rs = stmt.executeQuery("select * from temp");// temp 为表的名称 System.out.println("query result:"); while (rs.next()) { System.out.println(rs.getString("name")+" :"+rs.getString("password") ); } } catch (Exception e) { System.out.print("get data error!"); e.printStackTrace(); } } }

运行程序,执行完毕后查看数据库,此时应该可以看到:

mysql> select * from temp;
+-------+-----------+
| name  | password  |
+-------+-----------+
| name3 | password3 |
+-------+-----------+
1 row in set (0.00 sec)

 

到这里,例子就讲完了,希望对初学者有所帮助 :)

 

posted @ 2016-04-22 22:31  BensonLaur  阅读(6161)  评论(0编辑  收藏  举报