Java database主要知识提取

数据库

JDBC

  • 要通过java程序访问数据库的内容,必须使用数据库访问接口
    • 一组类/接口,完成数据库连接、处理查询请求,处理返回结果等工作
    • JDBC

简介

  • JDBC (Java Database Connection) 由一组用java语言编写的类和接口组成,JDBC为使用数据库机器工具的开发人员提供了标准的API,使得可以用这些API编写数据库应用程序。

  • JDBC 封装了与数据库服务器通信的细节,作用大概为以下三个方面

    1. 建立与数据库的连接
    2. 向数据库发起查询请求
    3. 处理数据库返回结果

体系结构

  • JDBC的实现包括一下三个部分
    1. JDBC驱动程序管理器
      • Java.sql.DriverManager类,由Sun公司提供,负责注册特定的驱动程序,建立与数据库之间的连接
    2. JDBC驱动程序API
      • 由Sun公司制定,最主要是java.sql.Driver接口
      • 屏蔽不同数据库驱动程序之间的差别,提供标准的纯java数据库设计结构
    3. JDBC Driver(驱动程序)
      • 由数据库供应商或其他第三方工具提供商创建,JDBC driver实现了JDBC驱动器API,负责与特定的数据库连接

主要接口

接口 作用
java.sql.DriverManager 处理驱动程序的加载和建立新数据库的连接
java.sql.Connection 处理与特定数据库的连接
java.sql.Statement 在指定连接中处理SQL语句
java.sql.ResultSet 处理数据库操作结果集

JDBC 应用程序模型

  1. 登记并加载JDBC驱动
  2. 建立与SQL数据库的连接
  3. 传送一个SQL查询
  4. 获得结果

连接MYSQL

  1. 下载Mysql
  2. 在Mysql中创建数据库
  3. 下载Mysql Connector/J 解压到合适位置
  4. 在java工程文件中添加mysql-connector-java-x.x.x 为 external Jars

数据库URL

static final String DATABASE_URL = "jdbc:mysql://localhost/books?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimeZone=GMT"

// jdbc 协议
// 子协议为 mysql
// 连接的数据库为books

连接数据库

Connection connection = DriverManager.getConnection(DATABASE_URL, "username", "password");

/**
1. 解析 JDBC URL 搜寻系统内注册的JDBC驱动程序,找到符合的位置
2. 如果需找到符合的驱动程序,建立数据库连接,返回一个Connection对象,否则返回一个null
3. 无法找到适当的JDBC驱动程序,抛出 SQLException 异常
*/
DatabaseMetaData dmd = connection.getMetaData(); // 确定数据库特征

操作数据库

Statement stat = connection.createStatement(); // 创建用于执行SQL语句的Statement对象
ResultSet resultSet = stat.executeQuery("...");
int flag = stat.executeUpdate();
ResultSetMetaData rsmd = resultSet.getMetaData();
int cols = rsmd.getColumnsCount();
while(resultSet.next()) {
    for (int i = 1; i <= cols; i++) {
        System.out.println(resultSet.getObject(i));
    }
}

关闭数据库

connection.close();
resultSet.close();
stat.close(); // 关闭连接,结果集,语句等

你可能感兴趣的:(java)