package com.usc.demo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import com.mysql.jdbc.Driver;
/*
* JDBC操作数据库的步骤
1.注册驱动.
告知JVM使用的是哪一个数据库的驱动
2.获得连接.
使用JDBC中的类,完成MYsql数据库的连接
3.获得语句执行平台
通过连接对象获取对SQL语句的执行者对象
4.执行sql语句
使用执行者对象,向数据库中执行SQL语句
获取到数据库执行后的结果
5.处理结果
6.释放资源. 一堆close()
*/
public class JDBCDemo {
public static void main(String[] args) throws SQLException, ClassNotFoundException{
//1.注册驱动
//使用java.sql.DriverManager类静态方法registerDriver(Driver driver)
//Driver是一个接口,参数传递,MySQL驱动程序中的实现类
//DriverManager.registerDriver(new Driver());
//根据驱动类的源码,上一句话注册2次驱动
//所以应当使用反射技术,将驱动类加入到内存,避免两次注册
Class.forName("com.mysql.jdbc.Driver");
//2.获得数据库的连接 DriverManager类中的静态方法
//static Connection getConnection(String url, String user, String password)
//返回值是Connection接口的实现类,在mysql驱动程序中
//url:数据库地址 jdbc:mysql://连接主机IP:端口号/数据库的名字
String url = "jdbc:mysql://localhost:3306/mybase";
String username = "root";
String password ="";
Connection con = DriverManager.getConnection(url, username, password);
//看看是否连接成功,如果连接成功则会返回一个实现了Connection接口的对象,
System.out.println(con);
//3.获取语句执行平台,通过数据库连接对象,获取SQL语句的执行者对象
//利用con对象调用 Statement createStatement() 获取Statement对象,将SQL语句发送到数据库
//返回值Statement接口的实现类对象,在msql驱动中
Statement stat = con.createStatement();
//看看实现类是什么
System.out.println(stat);
//4.执行sql语句
//通过执行者对象调用方法执行SQL语句,获取结果
// int executeUpdate(String sql) 执行数据库中的sql语句,insert delete update
//返回值int,操作成功数据表多少行
int row = stat.executeUpdate
("INSERT INTO sort(sname,sprice,sdesc) VALUES('汽车用品',500000,'疯狂涨价')");
//看看影响的行数
System.out.println(row);
//6.释放资源
stat.close();
con.close();
}
}