博客
关于我
JDBC学习笔记
阅读量:235 次
发布时间:2019-03-01

本文共 937 字,大约阅读时间需要 3 分钟。

概述

  • 概念:JDBC(Java DataBase Connectivity)是Java语言操作关系型数据库的标准接口,支持如MySQL、Oracle、DB2等数据库
  • 作用:作为桥梁,统一不同数据库的访问接口,使开发者无需关心具体数据库类型

体系结构

  • 分为两层接口
    • 面向应用的API,供程序员调用
    • 面向数据库的API,供数据库厂商开发驱动
  • Java应用程序 —— JDBC API —— JDBC Driver Manager —— JDBC驱动 —— 数据库
  • JDBC API由Java官方提供,主要功能接口包括:
    • DriverManager类:管理驱动注册
    • Connection接口:获取数据库连接
    • Statement接口:执行数据库操作
    • ResultSet接口:处理查询结果
  • Driver Manager的作用:负责加载和管理不同数据库的JDBC驱动,以获取连接
  • JDBC驱动由数据库厂商提供,负责连接具体的数据库

使用步骤

  • 1. 导入JDBC驱动包
    • 将JDBC驱动添加到项目依赖中
  • 2. 注册驱动
    • 使用反射加载驱动类
    • 建议使用com.mysql.cj.jdbc.Driver
  • 3. 获取数据库连接
    • 配置数据库URL
    • 提供用户名和密码
    • 通过DriverManager.getConnection获取连接
  • 4. 执行SQL操作
    • 使用Statement或PreparedStatement
    • executeUpdate和executeQuery分别处理增删改和查询操作
  • 5. 处理结果
    • 通过ResultSet处理查询结果
  • 6. 释放资源
    • 关闭Statement和Connection对象

PreparedStatement

  • PreparedStatement是Statement的子类,支持参数化查询
    • 优点:减少 SQL 注入风险,提高安全性
    • 使用方法:先传值后执行查询

SQL注入防护

  • SQL注入攻击通过恶意输入破坏数据库安全
    • 示例:利用OR条件执行恶意查询

常见问题解答

  • MySQL时区设置错误
    • 解决方法一:修改my.ini文件添加时区参数
    • 解决方法二:在连接URL中添加useSSL和serverTimezone参数
  • JDBC驱动注册方式选择
    • 使用反射加载驱动更具通用性

转载地址:http://dobv.baihongyu.com/

你可能感兴趣的文章
postgres10配置huge_pages
查看>>
PostgreSQL 10.0 preview sharding增强 - pushdown 增强
查看>>
PostgreSQL 10.0 preview 变化 - pg_xlog,pg_clog,pg_log目录更名为pg_wal,pg_xact,log
查看>>
PostgreSQL 10.1 手册_部分 II. SQL 语言_第 15章 并行查询_15.2. 何时会用到并行查询?...
查看>>
PostgreSQL 10.1 手册_部分 II. SQL 语言_第 9 章 函数和操作符_9.23. 行和数组比较
查看>>
PostgreSQL 10.1 手册_部分 III. 服务器管理_第 21 章 数据库角色
查看>>
Qt开发——网络编程UDP网络广播软件之服务器端
查看>>
Postgresql 12.9如何配置允许远程连接
查看>>
PostgreSQL 9.6 同步多副本 与 remote_apply事务同步级别 应用场景分析
查看>>
Postgresql CopyManager 流式批量数据入库
查看>>
PostgreSQL cube 插件 - 多维空间对象
查看>>
PostgreSQL Daily Maintenance - cluster table
查看>>
PostgreSQL on Linux 最佳部署手册
查看>>
PostgreSQL Oracle 兼容性之 - pipelined
查看>>
PostgreSQL Point-In-Time Recovery (Incremental Backup)
查看>>
postgresql Streaming Replication监控与注意事项
查看>>
postgresql 不需要付费_使用数据传输在PostgreSQL执行 外部连接运算符
查看>>
postgresql 主从配置_生产环境postgresql主从环境配置
查看>>
postgresql 函数&存储过程 ; 递归查询
查看>>
PostgreSQL 分组聚合查询中 filter 子句替换 case when
查看>>