JavaWeb01-JDBC学习总结
  10JuhW8rDHY6 2023年11月22日 23 0

为什么需要JDBC?

  • JDBC就是使用Java语言来操作关系型数据库的一套API。
  • 市场拥有众多的数据库:MySQL、Oracle、DB2等等。不可能每个数据库都重新开发Java代码来适配不同的数据库,那么Sun公司定义一套标准接口来统一操作数据库。

其中所谓的MySQL实现类就是MySQL驱动(驱动Jar包)这样就只需要使用JDBC一套API适用各种数据库

JDBC-API详解

  1. DriverManager:
  1. 注册驱动
    1. 获取数据库连接
    2. JavaWeb01-JDBC学习总结_SQL


  1. Connection:
    1. 获取执行SQL对象
    2. JavaWeb01-JDBC学习总结_SQL_02

    3. 管理事务
    4. JavaWeb01-JDBC学习总结_SQL_03

    5. 举个例子:
    6. JavaWeb01-JDBC学习总结_数据库_04

  2. Statement:
    1. 执行SQL语句
    2. JavaWeb01-JDBC学习总结_MySQL_05

  3. ResultSet:
    1. 封装了DQL查询语句的结果
    2. JavaWeb01-JDBC学习总结_数据库_06

    3. 举个例子:
    4. JavaWeb01-JDBC学习总结_数据库_07

  4. PreparedStatement:
    1. 预防SQL注入
    2. JavaWeb01-JDBC学习总结_MySQL_08

    3. 示例:  
    4. JavaWeb01-JDBC学习总结_MySQL_09

      1. 模拟登录逻辑:
      2. JavaWeb01-JDBC学习总结_SQL_10

      3. 模拟SQL注入:
      4. JavaWeb01-JDBC学习总结_SQL_11

      5. 拼接后SQL语句变成如下:
      6. JavaWeb01-JDBC学习总结_MySQL_12

      7. 解决SQL注入问题(通过PreparedStatement):
      8. JavaWeb01-JDBC学习总结_数据库_13

      9. 无法再注入SQL:
      10. JavaWeb01-JDBC学习总结_数据库_14

      11. 原理就是PreparedStatement将参数中特殊符号进行了转义:
      12. JavaWeb01-JDBC学习总结_MySQL_15

        JavaWeb01-JDBC学习总结_SQL_16

数据库连接池-Druid(德鲁伊)

  1. 什么是数据库连接池
  2. JavaWeb01-JDBC学习总结_数据库_17

  3. Druid数据库连接池框架的使用
  4. JavaWeb01-JDBC学习总结_MySQL_18

    JavaWeb01-JDBC学习总结_SQL_19

    JavaWeb01-JDBC学习总结_MySQL_20


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月22日 0

暂无评论

推荐阅读
  biE3E3UjTjeg   2024年01月22日   36   0   0 SQLSQL
10JuhW8rDHY6
作者其他文章 更多