JDBC是Java Data Base Connectivity的缩写即Java数据库连接
初学Java,在做一个图书管理系统的时候用到了关于数据库的知识,刚好我们课堂上也学习了数据库,在数据库连接的时候我选择的是mysql,应用程序我用的是eclipse,对于小白的我连接数据库的时候,在百度上搜了搜说是用到JDBC,于是我也就用了JDBC,使用JDBC能够做到与数据库之间的交流
我们安装好mysql之后,我们的应用程序eclipse是不能直接操纵数据库的,必须先安装数据库驱动,也就是一个jar包
可以通过该网址下载https://dev.mysql.com/downloads/connector/
然后下载就行了
然后你在eclipse里新建一个项目,然后右键该项目Bulid Path -> AddExternal,然后把你下载的jar包导入即可
导入jar包之后就可以进行数据库的连接了
这里有一个URL具体解释可以参
import java.sql.DriverManager;
import com.mysql.jdbc.Connection;
public class DbUtil {
private String dbUrl = "jdbc:mysql://localhost:3306/work?useSSL=false";
private String dbUserName = "root";
private String dbPassword = "123456";
private String jdbcName = "com.mysql.jdbc.Driver";
/*
* 数据库连接
*/
public Connection getCon() throws Exception {
Class.forName(jdbcName);
Connection con = (Connection) DriverManager.getConnection(dbUrl, dbUserName, dbPassword);
return con;
}
public static void main(String[] args) {
DbUtil dbUtil = new DbUtil();
try {
dbUtil.getCon();
System.out.println("数据库连接成功");
} catch (Exception e) {
e.printStackTrace();
System.out.println("数据库连接失败");
}
}
}
这种连接方式是以前的连接方式,但是现在8的版本有了改动
Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
正在加载类“com.mysql.jdbc.Driver”。这是不赞成的。新的驱动程序类是“com.mysql.cj.jdbc.driver”。驱动程序通过SPI自动注册,通常不需要手动加载驱动程序类。
意思是说,现在加载驱动的包已经不再是 com.mysql.jdbc.Driver而是com.mysql.cj.jdbc.Driver,并且是自动加载驱动的。
还有一个改动就是服务器时区
The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
服务器时区值'''''''''。如果要利用时区支持,则必须配置服务器或JDBC驱动程序(通过serverTimezone配置属性)以使用更具体的时区值。
也就是"jdbc:mysql://localhost:3306/work?useSSL=false"改成了"jdbc:mysql://localhost:3306/work?useSSL=false&serverTimezone=UTC"
public class DbUtil {
private String url = "jdbc:mysql://localhost:3306/work?useSSL=false&serverTimezone=UTC";
private String user = "root";
private String password = "root";
public Connection getCon() {
Connection con = null;
try {
con = DriverManager.getConnection(url, user, password);
} catch (Exception e) {
e.printStackTrace();
}
return con;
}
}
输出con如下图: