JDBC编程–jdbc基本操作步骤

  • Post author:
  • Post category:其他


JDBC即java数据库互连,是java语言和数据库之间独立于数据库的连接标准API,JDBC从根本上来说是一种规范,具体的实现需要依赖于具体数据库生产商提供jar包【驱动】,提供了统一的接口用于访问不同的底层数据库,允许使用java语言编写不同的应用程序以访问数据库。


1.添加驱动

每个JDBC应用程序至少需要有一个JDBC驱动程序,JDBC驱动是Driver接口的实现类

Eclipse添加驱动程序

在项目下建立一个lib文件夹,将驱动程序拷贝到文件夹中,然后右键点击jar包,选择Build Path,

选择第一个Add the BuildPath;

2.获取连接

通过驱动管理器DriverManager类获取和数据库系统的连接

Connection conn=DriverManager.getConnection("连接串","连接数据库的用户名称","对应的
口令")

连接串用于代表需要连接的数据库,连接串的标准jdbc主协议:子协议:其它部分,但是不同的数据

库系统其对应的连接串不同。例如连接oracle则驱动串为oracle.jdbc.OracleDriver ,连接串

为jdbc:oracle:thin:@localhost:1521:test

Class.forName("com.mysql.cj.jdbc.Driver");
Connection conn =
DriverManager.getConnection("jdbc:mysql://localhost:3306/test?
serverTimezone=UTC", "root", "123456");
System.out.println(conn); //com.mysql.cj.jdbc.ConnectionImpl@365185bd

3、构建语句对象

在与特定数据库建立连接后,就可以发送SQL语句,在发送SQL语句之前需要创建一个语句对象

Statement:用于提交静态sql语句。有sql注入漏洞

PreparedStatement:Statement的子接口

Statement对象中提供了executeQuery方法来执行查询操作,这个方法会返回查询结果集

ResultSet类对象,其中包含SQL语句的查询结果

Statement对象中提供了executeUpdate方法来执行修改操作,这个方法会返回一个int值,表示

sql的增删改操作所影响的数据行数。

4、接收查询结果集

JDBC中使用ResultSet对象来表示查询结果集,可以理解为一个指向满足查询结果的行指针,其中并不存放实际数据,所以在使用结果集之前不能关闭连接

Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from tb_student");

5、遍历处理结果集

ResultSet对象包含了执行查询后满足条件的所有行,提供了对应的访问方法,有一组对应的getXxx方法获取指定列的值(注意:连接不能关闭);

while(rs.next()){ //用于移动行指针,同时判断是否有数据,如果有数据则返回为true

//由于历史原因,列序号从1开始
long id=rs.getLong(1);//指定列时可以使用序号,也可以使用列名称,一般建议使用列名
称,因为数据表的结构会有变动
String name=rs.getString("name");
int age=rs.getInt("age");
boolean sex=rs.getBoolean("sex");
System.out.println(id+":"+name+":"+age+":"+sex);
}

6、关闭对象

手动关闭ResultSet、Statement和Connection,注意这里必须保证Connection对象关闭

建议使用try/finally结构



版权声明:本文为m0_56161893原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。