JDBC
简介
Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。
需要的依赖
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.22</version>
</dependency>
注意事项
MySql测试链接失败可能是因为时区设置的不对,Mysql8.0以上版本默认时区UTC,调整到GMT保存即可,也有其他措施,可自行百度。
使用步骤
- 加载驱动
- 连接数据库,代表数据库
- 向数据库发送statement对象
- 编写sql(根据业务逻辑)
- 执行sql
- 关闭连接
实现
查询操作
按照上面的六个步骤实现如下代码(mysql8.0以下的驱动可能要把cj去掉):
public static void main(String[] args) throws ClassNotFoundException, SQLException {
String url = "jdbc:mysql://localhost:3306/jdbc?usdUnicode=true&characterEncoding=utf-8&serverTimezone=GMT";
String username = "root";
String password = "root";
//1、加载类驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//2.连接数据库
Connection connection = DriverManager.getConnection(url, username, password);
//3.向数据库发送对象
Statement statement = connection.createStatement();
//4.sql语句
String sql = "select * from users";
//5、执行
ResultSet rs = statement.executeQuery(sql);
while(rs.next()){
System.out.println("id:"+rs.getObject("id"));
System.out.println("name:"+rs.getObject("name"));
System.out.println("password:"+rs.getObject("password"));
System.out.println("email:"+rs.getObject("email"));
System.out.println("birthday:"+rs.getObject("birthday"));
}
//6.关闭
rs.close();
statement.close();
connection.close();
}
注:上面的url格式相对来说比较固定,3306为默认端口,后面的“jdbc”表示自己建立的数据库。
删除操作
String sql="delete from users where id='1'";
int i=statement.executeUpdate(sql);
修改操作
String sql="update users set id='1' where id='2'";
statement.executeUpdate(sql);
插入操作
String sql = "insert into users values(1,"ds","sf","123@s.com",2020-10-2)
int res = statement.executeUpdate(sql);
以上,实现了JDBC对数据库最基本的增删查改功能。