一.jdbc简介
jdbc(java database connectivity): java数据库连接技术;java应用操作数据库技术的简称。
二.工作原理分析
jdbc api
: java厂商(sun公司定义)规定数据库驱动的标准(接口),数据库厂商(mysql,oracle,sqlserver)提供驱动的具体实现(数据库jar包)。
DriverManager
:驱动管理类
jdbc驱动
: mysql驱动,sqlserver驱动,oracle驱动。连接不同的数据库使用不同的驱动包(jar)
三.实现增、删、该操作
junit: 测试工具类,可以在一个类中定义多个方法,批量执行
1. 添加junit的jar包
2. 在类中定义普通方法
3. 在普通方法上添加@Test注解
4. 选中方法名,右键执行
public class MyTest2 {
@Test
public void test1(){
System.out.println("这是test1方法");
}
@Test
public void test2(){
System.out.println("这是test2方法");
System.out.println(1/0);
}
}
jdbc数据库操作的步骤
1. 添加对应数据库jar包(驱动)
2. 加载驱动类
3. 获取连接
4. 获取数据库操作对象(命令执行对象)
5. 执行sql(增删改查)
6. 获取结果集对象(针对查询操作)
7. 释放连接
四.使用Statement实现数据库操作
通过连接对象获取Statement对象
Statement st = 连接对象.createStatement();
代码:
package com.test1;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class Test3 {
public static void main(String[] args) {
//数据库插入的步骤
/*
* 1.添加jar包
* 2.加载驱动类
* 3.获取连接对象(Connection)
* 4.通过连接对象创建命令执行对象(Statement)
* 5.定义插入的sql语句
* 6.使用命令执行对象,执行sql语句,并返回受影响行数
* 7.关闭数据库对象(Connection,Statement)
*/
//驱动类字符串
String driver="com.mysql.cj.jdbc.Driver";
//数据库连接字符串
String url="jdbc:mysql://localhost:3306/goodsdb_1009?serverTimezone=Asia/Shanghai&useSSL=false&characterEncoding=utf8";
//定义用户名
String user="root";
//定义密码
String password="123456";
//定义连接对象
Connection con = null;
//定义sql命令执行对象
Statement st = null;
try {
//加载驱动类
Class.forName(driver);
//获取连接对象
con = DriverManager.getConnection(url, user, password);
//定义插入的sql语句
String sql="insert into goods"
+ " (goodsName,price,produceDate,address,categoryId)"
+ " values"
+ " ('辣条',5.5,'2019-10-05','福建',1) ";
//通过连接对象,创建命令执行对象
st = con.createStatement();
//使用命令执行对象,使用executeUpdate执行增删改sql语句,并返回受影响行数
int res = st.executeUpdate(sql);
System.out.println("插入的记录数:"+res);
} catch (Exception e) {
e.printStackTrace();
} finally{
try {
//关闭数据库对象
if(st!=null){
st.close();
}
if(con!=null){
con.close();
}
} catch (Exception e2) {
e2.printStackTrace();
}
}
}
}