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类型值。

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

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

     

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

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

  • 相关阅读:
    界面控件DevExpress WPF入门 表达式编辑器功能
    Telerik UI for WPF全新版本——拥有Office2019高对比度主题
    DevExpress报表控件v21.2 全新的Visual Studio报表设计器
    报告生成器FastReport .NET入门指南 在Linux中启动应用程序
    文档控件DevExpress Office File API v21.2 自定义字体加载引擎
    UI组件库Kendo UI for Angular入门 如何开始使用图表功能
    WPF界面工具Telerik UI for WPF入门级教程 设置一个主题(二)
    DevExtreme初级入门教程(React篇) TypeScript支持
    报表开发利器FastReport .NET v2022.1 添加关键对象和属性
    python项目打包(一) setup.py、Python源代码项目结构
  • 原文地址:https://www.cnblogs.com/alphajuns/p/9903792.html
Copyright © 2011-2022 走看看