01JDBC快速入门

JDBC:

1. 概念:Java DataBase Connectivity  Java 数据库连接, Java语言操作数据库
    * JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。

2. 快速入门:
    * 步骤:
        1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
            1.复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下
            2.右键-->Add As Library
        2. 注册驱动
        3. 获取数据库连接对象 Connection
        4. 定义sql
        5. 获取执行sql语句的对象 Statement
        6. 执行sql,接受返回结果
        7. 处理结果
        8. 释放资源

    * 代码实现:
          //1. 导入驱动jar包
        //2.注册驱动
        Class.forName("com.mysql.jdbc.Driver");
        //3.获取数据库连接对象
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db3", "root", "root");
        //4.定义sql语句
        String sql = "update account set balance = 500 where id = 1";
        //5.获取执行sql的对象 Statement
        Statement stmt = conn.createStatement();
        //6.执行sql
        int count = stmt.executeUpdate(sql);
        //7.处理结果
        System.out.println(count);
        //8.释放资源
        stmt.close();
        conn.close();

package cn.itcast.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

/**

  • JDBC快速入门

*/
public class JdbcDemo1 {

public static void main(String[] args) throws Exception {

    //1. 导入驱动jar包
    //2.注册驱动
    // Class.forName("com.mysql.jdbc.Driver");
    //3.获取数据库连接对象

// Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db3", "root", "root");

    Connection conn = DriverManager.getConnection("jdbc:mysql:///db3", "root", "root");
    //4.定义sql语句

// String sql = "update account set balance = 2000 where id = 1";

    String sql = "update account set balance = 2000";
    //5.获取执行sql的对象 Statement
    Statement stmt = conn.createStatement();
    //6.执行sql
    int count = stmt.executeUpdate(sql);
    //7.处理结果
    System.out.println(count);
    //8.释放资源
    stmt.close();
    conn.close();

}

}

一些方法的解释

getConnection

public static Connection getConnection(String url,

                                   String user,
                                   String password)
                            throws SQLException尝试建立与给定数据库URL的连接。 DriverManager尝试从一组已注册的JDBC驱动程序中选择适当的驱动程序。 

注意:如果user或password财产也被指定为部分url ,它是实现定义哪个值将优先考虑。 为了最大可移植性,应用程序应仅指定一次属性。

参数
url - 形式为 jdbc:subprotocol:subname的数据库网址
user - 正在连接的数据库用户
password - 用户密码
结果
与URL的连接
异常
SQLException - 如果发生数据库访问错误或url是 null
SQLTimeoutException - 当驱动程序确定已经超过了 setLoginTimeout方法指定的超时值,并且至少尝试取消当前的数据库连接尝试

createStatement

Statement createStatement()

               throws SQLException创建一个Statement对象,用于将SQL语句发送到数据库。 没有参数的SQL语句通常使用Statement对象执行。 如果相同的SQL语句执行了很多次,那么使用PreparedStatement对象可能会更有效。 

使用返回的Statement对象创建的结果集将默认为TYPE_FORWARD_ONLY ,并发级别为CONCUR_READ_ONLY 。 创建的结果集的可保持性可以通过调用getHoldability()来确定 。

结果
一个新的默认 Statement对象
异常
SQLException - 如果发生数据库访问错误或在闭合连接上调用此方法

executeUpdate

int executeUpdate(String sql)

       throws SQLException执行给定的SQL语句,这可能是INSERT , UPDATE ,或DELETE语句,或者不返回任何内容,如SQL DDL语句的SQL语句。 

注意:此方法无法在PreparedStatement或CallableStatement 。

参数
sql -一个SQL数据操纵语言(DML)语句,如INSERT , UPDATE或DELETE ; 或不返回任何内容的SQL语句,例如DDL语句。
结果
(1)SQL数据操作语言(DML)语句的行计数或(2)0不返回的SQL语句
异常
SQLException - 如果发生数据库访问错误,此方法在关闭的 Statement上调用,给定的SQL语句生成一个 ResultSet对象,该方法在 PreparedStatement或 CallableStatement
SQLTimeoutException - 当驱动程序确定已经超过 setQueryTimeout方法指定的超时值,并且至少尝试取消当前正在运行的 Statement

查看源码

Ctrl + Shift+i 出现类似于预览的小窗口
Ctrl + Enter (接上步)完全打开源码
Ctrl + 鼠标左键 一步到位打开源码 = Ctrl + Shift+i –>Ctrl + Enter

你可能感兴趣的:(java)