美文网首页
JDBC入门

JDBC入门

作者: pianpianboy | 来源:发表于2018-03-10 17:40 被阅读0次

JDBC入门

时间:20180310


1.1 简介
使用java程序访问(操作)数据库(发送sql语句),这叫用到了jdbc技术。

1.2 使用jdbc访问数据库的前提
1)先登录数据库:

  • 数据库的主机地址(IP地址):
  • 端口
  • 数据库用户名和密码
  • 连接的数据库
    2)发送sql语句
JDBC出现前的结构 JDBC出现后的结构

使用JDBC链接数据库

·

package gz.itast.a_jdbc;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;

/**
 * 使用jdbc技术链接数据库
 * @author mengjie
 *
 */
public class Demo1 {
    //连接数据库的字符串,jdbc协议,类似于浏览器和服务器沟通的协议 (http协议)
    //jdbc协议+数据库协议+ip+port+连接的数据库名称
    private static String url = "jdbc:mysql://localhost:3306/day16"; 
    //用户名
    private static String user = "root";
    //密码
    private static String password = "root";
    public static void main(String[] args) throws SQLException, ClassNotFoundException {
        //t1();
        //t2();
        //t3();
        
        //主要流程
        //1.注册驱动程序(只注册一次)
        Class.forName("com.mysql.jdbc.Driver");
        //上述代码主要是为了调用Driver.class中代码(mysql具体实现类)
        //
        // Register ourselves with the DriverManager
        //
        //static {
            //try {
                //java.sql.DriverManager.registerDriver(new Driver());
            //} catch (SQLException E) {
                //throw new RuntimeException("Can't register driver!");
            //}
        //}
        
        //2.使用驱动管理类获取连接
        Connection conn = DriverManager.getConnection(url,user,password);
        System.out.println(conn);
    }

    private static void t3() throws ClassNotFoundException {
        /**
         * 反射:获取类的对象
         * 解决了t2中重复注册驱动程序的问题
         * 而且降低依赖程度(t2过度依赖com.mysql.jdbc.Driver() 类)
         */
        Class.forName("com.mysql.jdbc.Driver");//执行Driver类中的静态代码块
    }
    
    /**
     * 使用驱动管理类DriverManager,连接数据库
     * @throws SQLException
     */
    private static void t2() throws SQLException {
        Driver driver = new com.mysql.jdbc.Driver();//mysql //注册了一次驱动
//      Driver driver2 = new com.oracle.jdbc.Driver();
        //1.注册驱动程序
        DriverManager.registerDriver(driver);//有注册了一次驱动,即重复注册了两次驱动
        //DriverManager.registerDriver(driver2);
        
        //2.获取连接数据库
        Connection conn = DriverManager.getConnection(url, user, password);//通过url识别需要连接数据库
        System.out.println(conn);
    }

    /**
     * 1) 直接使用驱动程序连接
     * @throws SQLException
     */
    private static void t1() throws SQLException {
        //1.创建驱动程序的实现类对象
        Driver driver = new com.mysql.jdbc.Driver();//新版本
//      Driver driver = new org.gjt.mm.mysql.Driver();//旧版本
        
        Properties prop = new Properties();
        prop.setProperty("user", user);//用户名
        prop.setProperty("password", password);
        //2.连接数据库
        Connection conn = driver.connect(url, prop);
        System.out.println(conn);
    }
}

1.3 jdbc的api
|- Driver接口: 驱动程序接口。
  |-Connection conn = connect() 用于连接数据库的方法。
|-Connection 接口: 代表和数据库的连接。
  |-Statement createStatement() 创建Statement接口的对象。
  |-PreparedStatement prepareStatement(String sql) 创建PreparedStatement接口的对象。
  |-CallableStatement prepareCall(String sql) 创建CallableStatement接口的对象。

|-Statement接口:用于执行静态SQL语句。
  |- int executeUpdate(String sql)执行DDL和DML语句(更新sql语句)比如INSERT\UPDATE\DELETE(DML),或者不返回任何内容的SQL语句(DDL)。
  |-ResultSet executeQuery(String sql) 执行DQL语句(查询sql语句)

  |-PreparedStatement接口:用于执行预编译的SQL语句
    |-int executeUpdate();执行DDL和DML语句(更新sql语句)
    |-resultSet executeQuery()执行DQL语句(查询sql语句)

        |-CallableStatement接口:用于执行存储过程的SQL语句
          |- ResultSet executeQuery()存储过程只能执行查询sql

|-ResultSet接口:表示数据库结果集
  |-boolean next() 将光标移至下一行
  |-getXXX():获取结果集中的每列的值

相关文章

  • Mybatis_day01

    1 Mybatis入门 1.1 单独使用jdbc编程问题总结 1.1.1 jdbc程序 上边使用jdbc的原始方法...

  • (05)Mybatis入门及实践

    1 Mybatis入门 1.1 单独使用jdbc编程问题总结 1.1.1 jdbc程序 上边使...

  • Spring入门(三)之整合jdbc

    三、spring入门之整合jdbc 通过继承org.springframework.jdbc.core.suppo...

  • JDBC

    JDBC总结: 1.jdbc入门 2.抽取工具类 3.jdbc与java代码联系的基本sql语句操作 4.JDBC...

  • 【Java Web开发系列课程】JDBC数据库开发快速入门

    免费课程链接:【Java Web开发系列课程】JDBC数据库开发快速入门 什么是JDBC JDBC(Java Da...

  • JDBC 接口学习

    说明:文章所有内容皆选自实验楼教程【JDBC 入门教程】,想要学习更多JDBC,可以点击教程进行学习~ JDBC ...

  • 一、JDBC

    今日内容 JDBC基本概念 快速入门 对JDBC中各个接口和类详解 一、JDBC概述 概念:Java DataBa...

  • JDBC入门

    JDBC入门 时间:20180310 1.1 简介使用java程序访问(操作)数据库(发送sql语句),这叫用到了...

  • JDBC入门

    JDBC的全称:JavaDataBaseConnectivity(java数据库链接)。 作用: 在没有JD...

  • JDBC入门

    JDBC: Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语...

网友评论

      本文标题:JDBC入门

      本文链接:https://www.haomeiwen.com/subject/lygvfftx.html