zoukankan      html  css  js  c++  java
  • JDBC

    1、JDBC概述
    JDBC(Java Data Base Connectivity)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。是Java访问数据库的标准规范。
    2、JDBC原理
    Java提供访问数据库的规范称为JDBC,而生产厂商提供规范的实现类称为驱动。JDBC是接口,驱动是接口的实现。
    3、JDBC的开发步骤

    1. 注册驱动
    2. 获得连接
    3. 获得语句执行平台
    4. 执行SQL语句
    5. 处理结果
    6. 释放资源


    1、注册驱动
    JDBC规范定义驱动接口:java.sql.Driver,MySQL驱动包提供了实现类:com.mysql.jdbc.Driver
    DriverManager工具类,提供了注册驱动的方法registerDriver(),方法参数是java.sql.Driver,所以我们可以通过如下语句进行注册:
    DriverManager.registerDriver(new com.mysql.jdbc.Driver());
    上述注册驱动方式的缺陷在于:
    1、硬编码,后期不易于程序扩展和维护
    2、驱动被注册两次
    开发过程中通常使用Class.forName()加载一个使用字符串描述的驱动类。

    2、获得连接
    获取连接需要方法DriverManager.getConnection(url,username,password)三个参数分别表示。

    • url:需要连接数据库的位置
    • username:用户名
    • password:密码

    MySQL的url:jdbc:mysql://localhost:3306/mydb
    url由三部分组成

    • 第一部分jdbc是固定的
    • 第二部分数据库管理系统名称mysql
    • 第三部分由数据库服务器的ip地址、端口号、数据库名


    3、获得语句执行平台
    获得Statement语句执行平台:Statement stmt = con.createStatement();
    常用方法:

    • int executeUpdate(String sql):执行insert、update、delete语句
    • ResultSet executeQuery(String sql):执行select语句
    • boolean execute(String sql):执行select语句返回true,执行其他语句返回false


    4、处理结果集(执行insert、update、delete无需处理)
    ResultSet实际上是一张二维表,我们可以通过调用其boolean next()方法指向某行记录,当第一次调用next()方法时,便指向第一行记录的位置,这时可以使用ResultSet提供的getXxx()
    方法来获取指定列的数据。
    常用方法:

    • Object getObject(int index)/Object getObject(String name)获得任意对象
    • String getString(int index)/Object getObject(String name)或得字符串
    • int getInt(int index)/Object getObject(String name)获得整型
    • double getDouble(int index)/Object getObject(String name)获得双精度浮点型


    5、释放资源
    举例:


    4、预处理对象
    使用PreparedStatement预处理对象时,建议每条sql语句所有的实际参数,都使用逗号分开。
    设置实际参数:
    void setXxx(int index,Xxx xx):将指定参数设置为给定的Java的xx值。再将此值发送到数据库时,驱动程序将它转换成一个SQL Xxx类型值。

    使用预处理对象向数据库插入数据记录:

    使用预处理对象更新数据库记录:

     

    使用预处理对象删除数据库记录:

    使用预处理对象查询结果:

  • 相关阅读:
    vue双向数据绑定原理解析及js代码实现
    react 实现tab切换
    vue不是内部或外部命令,解决办法
    JavaScript 基础知识 表达式和运算符
    JavaScript 基础知识 变量与数据类型
    Animation动画-小动画
    Ajax的封装
    esp32 python上位机(命令行)
    ESP32扫描环境中的所有WiFi并且通过串口选择需要连接的WiFi
    Linux修改开机图形/etc/motd
  • 原文地址:https://www.cnblogs.com/alphajuns/p/9903792.html
Copyright © 2011-2022 走看看