码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • JDBC使用了哪种设计模式


    JDK中提供了操作数据库的接口,比如

    java.sql.Driver

    java.sql.Connection

    java.sql.Statement

    java.sql.PreparedStatement

    不同的数据库厂商提供操作自己数据库的驱动包,

    比如mysql 

    public class Driver extends NonRegisteringDriver implements java.sql.Driver
    public interface JdbcConnection extends java.sql.Connection, MysqlConnection, TransactionEventHandler 
    public interface JdbcStatement extends java.sql.Statement, Query
    

    比如oracle

    public class OracleDriver implements java.sql.Driver
    public interface OracleConnection extends java.sql.Connection
    public interface OracleStatement extends java.sql.Statement
    

    可以看到,不论是mysql 还是 oracle,都对 JDBC接口进行了实现。

    难道是属于策略模式?看一下策略模式类图(图解设计模式),好像是挺像的

    不过还有一种模式,叫桥接模式(图解设计模式)

     

    GOF对桥接模式的意图解释:

    将抽象部分与它的实现部分分离,使它们都可以独立地变化 

    GOF对策略模式的意图解释:

    定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。本模式使得算法可独
    立于使用它的客户而变化

    看下下面的图:

     

    所以,可以将JDBC中定义的接口看成是 抽象部分,而mysql 、oracle看成是具体的实现,这种将抽象和实现分开,就是桥接模式的定义啊。所以,不能只关注 实际的接口类或者实现类之间的关系,应该从宏观上来看他们之间的关系,因此,JDBC就是使用了桥接模式。

     

     

     

  • 相关阅读:
    实现消费者裂变与高收益的秘诀
    Echarts基础
    腾讯视频共享设备ip会不会出现错误
    docker发布dubbo服务 外部程序访问不到问题处理
    zookeeper 理论合集
    [笔记]机器学习之机器学习理论及案例分析《二》 聚类
    “平民化”非结构数据处理
    仿快看漫画微信小程序的实现
    《Channel-wise Knowledge Distillation for Dense Prediction》论文详解
    蓝桥ACM培训-搜索
  • 原文地址:https://blog.csdn.net/htydowd/article/details/132581998
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号