java源码解析之jdbc

时间:2022-11-06 17:20:30

    长期以来,一直被什么 hibernate啦,jdo啦,mybatis啦,jdbc啦,mysql-connector.jar搞得晕头转向。。 很是难受。。 因此特别去看了看jdk的jdbc标准。。 通过搜索资料也不难知道,它是Javaee的十三大标准之一。。   之所以说它是一个标准是有原因的,请看源码。。 

   java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

   它的外观基本就是这个样子。。 由于当时使用Linux的机器做的截图,现在看起来还是有一些别扭的感觉。。 

   看视看源码的时候选择的是从DriverManager开始。。 

 java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

接着的是: Driver,按照我们平时使用的习惯来的。

  java源码解析之jdbc

java源码解析之jdbc


接下来是:Connection

  java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

    可以看到它的内部是关于Connection的一些标准。。

接下来是Statement

   java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

  当然,又是一套标准。。 

 接下来是Result

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

java源码解析之jdbc

   以上是对Jdbc标准的一些理解。。 当然在扩展包中有了一些的补充。。 但始终不是全部实现。。  关于标准与实现的关系我记得我写了一点笔记,但是我刚刚怎么没看到。。 反正在这些注释中的某一个。。  因此我们可以看到,当我们在导入springboot的时候,有一些javax的对jdbc的支持。。   也就是说jdk官方可能没给全,或者后来的标准升级了。。 反正我在调试的时候是遇到过这种情况。。  

    对于orm框架,我之前在网上也是看到一位知乎网友写的十分不错。。 但是由于当时没有做记录。。 大体意思是说,其它语言与数据库产品通信并非直接通信,而是通过相关产品的客户端与服务器通信的。。 这一点我想对我们的理解还是很重要的。。。 

  ok ,以上是jdbc标准的内容,将来在看orm框架的时候会继续看它上层的相关架构。。  本来打算下个内容看一看servlet标准的。。 但是servlet标准好些并没有被jdk直接收录。。 因此只能作罢。。  等将来看tomcat-emmebed的时候进行学习。