java--JDBC与类、接口

JDBC概述

JDBC(Java Database Connectivity )是java语言操作数据库的API(应用程序接口),它在java.sql.*包下。要在你的IDE中导入相关的数据库jar包,我用的是MySQL数据库和idea编译器,导入的是这个https://pan.baidu.com/s/1u793mqxk_U2FwzsiDa27gAjar包

常用的接口

Connection 连接 代表了java和数据之间的通道,桥梁
Statement  语句 可以用来执行 insert, update, delete , select ...
ResultSet  结果集 代表的是查询的结果

常用的类

DriverManager 工具类,获取连接对象
SQLException  异常对象 是 Exception的子类型,属于检查异常 

操作步骤顺序

1、加载驱动 (Driver) jdbc的驱动就是一个连接工厂,生成的产品是连接对象

  • com.mysql.jdbc.Driver 是Driver的mysql实现类
  • oracle.jdbc.Driver    是Driver的oracle实现类

  格式: Class.forName("驱动类名");
  例如:Class.forName("com.mysql.jdbc.Driver");// jdbc 3.0 以上版本都可以省略加载驱动这一步
 2、获取连接对象

  • DriverManager.getConnection(url, 用户名, 密码); // 内部调用了  Driver 对象获取数据库连接,其中url的格式:jdbc:mysql://ip地址:端口号/数据库名?参数

  例如:mysql数据库
  Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root");

3、创建语句对象

  • Statement stmt = conn.createStatement();

4、执行sql

  • int rows = stmt.executeUpdate(String sql); // 用来执行 insert , update, delete , DDL , 返回值代表影响行数
  • ResultSet rs = stmt.executeQuery(String sql); // 用来执行 select
  • boolean moreRows = rs.next() //取得下一条记录, moreRows 是true ,表示有下一条记录, false 表示没有了

5、释放资源( 先打开的资源后关闭 )

上述的第三步和第四步可以用另一个语法创建对象也就是用PreparedStatement (预编译语句)创建对象,它与Statement创建对象不同,它是把sql语句在创建对象是就放入的,也可以用“?”符号来对SQL语句进行占位,并给这个位置赋值,如下:

1.、需要预先提供sql语句

  • PreparedStatement psmt = conn.prepareStatement(String sql);

2、可以在sql中用?占位某个值

  • 如:String sql ="insert into student(sid,sname,birthday,sex) values(null, ?, ?, ?)" ;
  •         PreparedStatement psmt = conn.prepareStatement(sql);

3、给?赋值,使用PreparedStatement中一系列以 set开头的方法(位置1开始),有很多例举几个常用,如下 

  • setString(?的位置, 值)//给类型为String类型的变量赋值,从位置1开始
  • setInt(?的位置, 值)//给类型为Int类型的变量赋值,从位置1开始
  • setDate(?的位置, 值)//给类型为Date类型的变量赋值,从位置1开始

4、执行sql

  • int rows = psmt.executeUpdate();//用来执行 insert , update, delete , DDL , 返回值代表影响行数
  • ResultSet rs = psmt.executeQuery();//用来执行 select
  • boolean moreRows = rs.next() //取得下一条记录, moreRows 是true ,表示有下一条记录, false 表示没有了

代码演示

student表
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值