1 JDBC简介
- JDBC是SUN公司为了简化操作数据库而推出的一种规范。
- 数据库厂商的驱动就是对JDBC的实现。
2 JDBC的开发
2.1 mysql驱动的pom.xml
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
2.2 准备工作
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
INSERT INTO `user` VALUES ('1', '许巍');
INSERT INTO `user` VALUES ('2', '许威威');
2.3 JDBC的编码步骤
- ①注册驱动。
- ②获取和数据库的连接。
- ③创建代表SQL语句的执行对象。
- ④执行SQL语句。
- ⑤如果是查询语句,需要遍历结果集。
- ⑥释放占用的资源。
2.4 JDBC的应用
package com.xuweiwei;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class jdbc1 {
public static void main(String[] args) throws Exception {
//加载驱动
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "123456";
//获取连接
Connection connection = DriverManager.getConnection(url,user,password);
String sql = " select id,name from user ";
Statement statement = connection.createStatement();
ResultSet rs = statement.executeQuery(sql);
while(rs.next()){
int id = rs.getInt(1);
String name = rs.getString(2);
System.out.println("id:"+id+",name:"+name);
}
rs.close();
statement.close();
connection.close();
}
}
3 JDBC中常用的接口详解
3.1 DriverManager
- 作用:
- ①注册驱动。
- 方式一:(不建议使用),因为会依赖具体的驱动,并且会将驱动注册2遍。
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
Class.forName("com.mysql.jdbc.Driver");
public static Connection getConnection(String url,String user,String password) throws SQLException
public static Connection getConnection(String url,Properties info) throws SQLException
3.2 Connection
// 创建向数据库发送SQL的Statement对象
public Statement createStatement();
3.3 Statement
- 作用:代表SQL语句的对象。可以向数据库发送任何的SQL语句。
//SQL一般都是查询语句
ResultSet executeQuery(String sql) ;
//SQL一般都是DML
int executeUpdate(String sql) throws SQLException
3.4 ResultSet