JDBC 驱动程序实现提供允许客户端与第三方数据库通信的低级细节。我只是好奇它在幕后做了什么。用不同语言编写的两个系统之间的通信通常通过 Web 服务进行。
jdbc 驱动程序是否使用 Web 服务在客户端和 db 服务器之间进行通信?还是我过于简单化了?
编写 JDBC 驱动程序的人有多种选择:
类型 3 驱动程序可能使用 Web 服务与中间件通信。其他类型的驱动程序最有可能通过 TCP/IP 套接字(如果数据库位于远程主机上)或其他合适的可靠传输,而不是通过 Web 服务,以特定于数据库的二进制协议进行通信。
您应该检查此链接,因为它向您展示了 JDBC 的工作原理。
现在提出您的问题:没有 JDBC 不使用 Web 服务。它连接到不同类型数据库的方式取决于数据库供应商,因为不同的数据库供应商提供自己的驱动程序实现,您只需要使用该实现即可。没有什么能比得上网络服务。每个数据库供应商都为您提供他们自己的一些 api 来访问数据库,它们映射到 Java 的 api 以访问通用的数据库。Java 为数据库操作提供了一个通用 api,它最终使用套接字与数据库进行操作和通信。
所以你需要阅读的是TCP/IP、Socket编程、IO和JDBC。请不要忘记检查链接,它肯定会帮助您理解这个概念。