JDBC连接
-
JDBC连接(Connection):Connection代表一个JDBC连接,它相当于Java程序到数据库的连接(通常是TCP连接)。打开一个Connection时,需要准备URL、用户名和口令,才能成功连接到数据库。
-
URL是由数据库厂商指定的格式,例如,MySQL的URL是:
jdbc:mysql://<hostname>:<port>/<db>?key1=value1&key2=value2
假设数据库运行在本机
localhost
,端口使用标准的3306
,数据库名称是learnjdbc
,那么URL如下:jdbc:mysql://localhost:3306/learnjdbc?useSSL=false&characterEncoding=utf8
后面的两个参数表示不使用SSL加密,使用UTF-8作为字符编码(注意MySQL的UTF-8是
utf8
)。 -
要获取数据库连接,使用如下代码:
// JDBC连接的URL, 不同数据库有不同的格式: String JDBC_URL = "jdbc:mysql://localhost:3306/test"; String JDBC_USER = "root"; String JDBC_PASSWORD = "password"; // 获取连接: Connection conn = DriverManager.getConnection(JDBC_URL, JDBC_USER, JDBC_PASSWORD); // TODO: 访问数据库... // 关闭连接: conn.close();
-
核心代码是
DriverManager
提供的静态方法getConnection()
。DriverManager
会自动扫描classpath,找到所有的JDBC驱动,然后根据我们传入的URL自动挑选一个合适的驱动。 -
因为JDBC连接是一种昂贵的资源,所以使用后要及时释放。使用
try (resource)
来自动释放JDBC连接是一个好方法:try (Connection conn = DriverManager.getConnection(JDBC_URL, JDBC_USER, JDBC_PASSWORD)) { ... }
-
-