JDBC (B站动力节点杜老师)
1.JDBC是什么
2.jdbc的本质是什么?
多态:
Animal a = new Cat ( ) --》面向抽象编程
父类型的引用 指向 子类型的对象
3.开发前准备工作
4.jdbc 过程
注册驱动方式两种
使用资源绑定器绑定属性配置文件
URL解析
5.遍历结果集
idea
导入.jar包
字符串中拼变量
(sql)单引号中 加双引号 加两个加号++ 加号里面加变量
PreparedStatement预编译
查(SELECT)
第四步用 rs = ps.executeQuery(“字段”);
增删改(INSERT DELETE UPDATE)
第四步用 rs= ps.executeUpdate(“字段”);
框架(select)
public static void main(String[] args){
Connection conn = null;
PreparedStatement ps = null;//加d是名词
ResultSet rs = null;
try {
//1.注册驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//2.获取连接
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/codeyuaiiao?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8","root","3615yuhaijiao");
//3.获取预编译的数据库操作对象
String sql = "select * from student";
ps = conn.prepareStatement(sql);//动词
//4.执行sql语句
rs = ps.executeQuery();//查询select
//rs = ps.executeUpdate();//增删改都是用Update(INSERT DELETE UPDATE)
//5.处理查询结果集
} catch (Exception e) {
e.printStackTrace();
}finally {
//6.释放资源
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (ps != null) {
try {
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
事务三件套 (开启 提交 回滚)
conn.setAutoCommit(false); 关闭自动提交 开启事务
conn.commit(); 手动提交
conn.rollback(); catch中写 回滚
if(conn != null){
try{
conn.rollback();
}catch(sqlException e1){
e1.printStackTrace();
}
}