博客
关于我
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/

你可能感兴趣的文章
Network Sniffer and Connection Analyzer
查看>>
Network 灰鸽宝典【目录】
查看>>
NetworkX系列教程(11)-graph和其他数据格式转换
查看>>
Networkx读取军械调查-ITN综合传输网络?/读取GML文件
查看>>
network小学习
查看>>
Netwox网络工具使用详解
查看>>
Net与Flex入门
查看>>
net包之IPConn
查看>>
Net操作配置文件(Web.config|App.config)通用类
查看>>
Neutron系列 : Neutron OVS OpenFlow 流表 和 L2 Population(7)
查看>>
New Relic——手机应用app开发达人的福利立即就到啦!
查看>>
NFinal学习笔记 02—NFinalBuild
查看>>
NFS
查看>>
NFS Server及Client配置与挂载详解
查看>>
NFS共享文件系统搭建
查看>>
nfs复习
查看>>
NFS安装配置
查看>>
NFS的安装以及windows/linux挂载linux网络文件系统NFS
查看>>
NFS的常用挂载参数
查看>>
NFS网络文件系统
查看>>