java为什么JDBC将零端口视为空(默认)端口?
在我正在开发的系统上,我必须连接不同主机和端口上的多个数据库。问题是: 我正在努力联系jdbc:mariadb://127.0.0.1:3306/testdb使用JDBC连接,一切正常,但我也可以通过JDBC:mariadb://127.0.0.1:0/testdb而且连接仍然有效
阅读JDBC文档:https://docs.oracle.com/javase/tutorial/jdbc/basics/connecting.html
我发现“host:port是托管数据库的计算机的主机名和端口号。如果没有指定,host和port的默认值分别是127.0.0.1和3306。”
但端口被指定为零。 我应该忽略零作为端口吗
# 1 楼答案
端口0是保留端口,不能用于一般用途。(参考:here,通过here)。显然,MariaDB JDBC驱动程序可以识别这一点,如果指定了端口0,则只需使用默认端口值(3306)