一、概述:
JDBC全称是Java Database Connectivity,是java数据库连接,是SUN公司为了简化 、统一对数据库的操作从而定义了一套java操作数据库的规范(接口),称之为JDBC。这套接口由 数据库厂商去实现,这样我们只需要学习jdbc接口,并通过jdbc加载具体的驱动,就可连接数据库
实现JDBC的固定步骤
1.加载驱动
2.获取与数据库的连接
3.获取用于向数据发送sql语句的statement
4.编写SQL并执行
5.获得查询结果
6.关闭资源
下面是详细步骤的代码:
package org.qq.com;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Test1 {
public static void main(String[] args) throws Exception {
//1.连接数据库
Class.forName("com.mysql.jdbc.Driver");
//2.获取数据库的连接
String username = "root";
String password = "123456";
String url = "jdbc:mysql://localhost:3306/school";
Connection connection = DriverManager.getConnection(url,username,password);
//3.编写SQL语句
String sql = "SELECT * FROM student WHERE StudentNo = 1001 ";
String sql1 = "INSERT INTO SUBJECT (SubjectNo,SubjectName,ClassHour,gradeId)VALUES(20,'Chinese',123,3)";
//4.执行SQL语句
Statement statement = connection.createStatement();
Statement statement1 = connection.createStatement();
int i = statement.executeUpdate(sql1);//返回受影响的行数
if (i>0){
System.out.println("插入成功");
}
ResultSet resultSet = statement1.executeQuery(sql);
//获得查询的结果
while (resultSet.next()){
System.out.println(resultSet.getObject(1));
System.out.println(resultSet.getObject(2));
System.out.println(resultSet.getObject(3));
System.out.println(resultSet.getObject(4));
System.out.println(resultSet.getObject(5));
}
//释放资源
connection.close();
statement.close();
resultSet.close();
}
}
可以获得查询结果:
插入成功
1001
123456
李文才
true
2
二、数据库的URL
1.URL用来标识数据库的位置,通过URL地址来告诉JDBC程序连接那个数据库,URL的写法为:"jdbc:mysql://localhost:3306/school"
2.URL的表达式可以理解为:协议+子协议+主机+端口号+数据库+参数,MySQL端口号为3306.
三、DriverManager类
首先jdbc中的DriverManager用于加载驱动,并创建与数据库的连接,通常有两种方法;
1.DriverManager.registerDriver(new Driver());
2. DriverManager.getConnection(url,url,password)
区别:
在实际开发中并不推荐使用registerDriver方法,这是因为采用此种方式会导致驱动程序注册两次,在内存中会有两个Driver对象,另外程序依赖的jar包,脱离jar包将会无法编译,将来程序切换底层数据会非常麻烦。
推荐使用
DriverManager.getConnection(url,url,password)