JDBC连接数据库及增删改查操作

什么是JDBC?
Java语言访问数据库的一种规范,是一套API
JDBC (Java Database Connectivity) API,即Java数据库编程接口,是一组标准的Java语言中的接口和类,使用这些接口和类,Java客户端程序可以访问各种不同类型的数据库。比如建立数据库连接、执行SQL语句进行数据的存取操作。

JDBC规范采用接口和实现分离的思想设计了Java数据库编程的框架。接口包含在java.sql及javax.sql包中,其中java.sql属于JavaSE,javax.sql属于JavaEE。这些接口的实现类叫做数据库驱动程序,由数据库的厂商或其它的厂商或个人提供。

为了使客户端程序独立于特定的数据库驱动程序,JDBC规范建议开发者使用基于接口的编程方式,即尽量使应用仅依赖java.sql及javax.sql中的接口和类。

JAVA使用JDBC访问数据库的步骤:

1.     得到数据库驱动程序

2.     创建数据库连接

3.     执行SQL语句

4.     得到结果集

5.     对结果集做相应的处理(,,,)

6.     关闭资源:这里释放的是DB中的资源

      使用oracle数据库为例子

一、下载oracle jdbc驱动(jar包),在工程中创立lib文件夹,把jar包放到lib文件夹中。如下图:

 

二、右键工程名,选择build poth->configurg build poth 打开properties for '项目录'窗口。单击add jars..打开jars selectino窗口。选择下载的oracle驱动jar包。点OK。

 

 

 

三、驱动已经配置完成,写代码测试吧。

 

数据库名:orcl

表名:testresult

 

 

 1 import java.sql.Connection;
 2 import java.sql.DriverManager;
 3 import java.sql.PreparedStatement;
 4 import java.sql.ResultSet;
 5 import java.sql.SQLException;
 6 
 7 
 8 public class Test {
 9     public static void main(String[] args) {
10         try {
11             //一、载入JDBC驱动:
12             Class.forName("oracle.jdbc.OracleDriver");
13             /*
14              * 二、得到数据库连接对象
15              *    DriverManager:这个是一个实现类,它是一个工厂类,DriverManager.getConnection()方法用来生产Connection对象的
16              *    DriverManager.getConnection()方法三个参数分别为:1.连接字符串  2.登录数据库用户名    3.登录数据库的密码
17              *    连接字符串格式为:jdbc:oracle:thin:@[ip地址]:[端口号]:[数据库名]
18              */
19             Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL", "wladmin", "lan2711");
20             System.out.println("连接成功");
21             
22             
23             
24             /*
25              * 三、对数据库进行增删改查操作
26              * PreparedStatement:预编译的sql语句对象
27              * 作用: 解决了书写sql语句时一些特殊的字符与sql保留字符冲突的问题,非常方便
28              * 使用conn.prepareStatement()方法得到PreparedStatement对象,参数为要执行的sql语句。
29              */
30             PreparedStatement pStat = conn.prepareStatement("insert into testresult values(003,'JDBC')");
31             //执行增删改操作
32             pStat.executeUpdate();
33             System.out.println("插入成功");
34             
35             //执行查询操作
36             pStat = conn.prepareStatement("select * from testresult");
37             //executeQuery()将返回一个用于指向结果集对象的接口--ResultSet
38             ResultSet rs = pStat.executeQuery();
39             //遍历rs并输出结果
40             while(rs.next()){
41                 System.out.println(rs.getInt(1)+"   "+rs.getString(2));
42             }
43             
44             //关闭连接对象:连接对象关闭时会把相关的PreparedStatement对象、ResultSet对象一起关闭
45             conn.close();
46             
47         } catch (ClassNotFoundException e) {
48             e.printStackTrace();
49         } catch (SQLException e) {
50             e.printStackTrace();
51         }
52     }
53 }
原文地址:https://www.cnblogs.com/likailan/p/3265741.html