概述
-
Part1 JDBC
JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问oracle数据库又专门写一个程序。使开发人员能够更便捷的编写数据库应用程序。
-
Part2 JDBC连接数据库
使用JDBC连接数据库简而言之包含了以下四个部分:加载驱动、连接数据库、创建statement对象、执行SQL命令。
1、加载驱动
JDBC在连接数据库前需要先加载驱动,通过java.lang.Class类的forName()实现驱动的加载。
Class.forName("oracle.jdbc.driver.OracleDriver");
2、连接数据库
通过java.sql.DriverManager中的getConnection()方法获取一个Connection对象,即为创建一个数据库连接。
Connection conn = DriverManager.getConnection(url,username,passwd);
//url示例
jdbc:oracle:thin:@127.0.0.1:1521:orcl
jdbc:使用jdbc连接协议
oracle:使用oracle数据库
thin:oracle数据库连接模式,thin模式不需要安装客户端,oci模式需要安装客户端
@127.0.0.1:数据库地址
1521:数据库端口
orcl:数据库实例名
3、创建Statement对象
在执行SQL语句前需要先创建statement对象。
Statement stmt = conn.createStatement();
4、执行SQL
Statement有三种执行SQL语句的方法:
①executeQuery 此方法用来执行select语句,返回查询到的结果集。
②executeUpdate 此方法用来执行insert、update或delete语句以及SQL DDL(数据定义语言)语句,例如create table和drop table。insert、update或delete语句的效果是修改表中零行或多行中的一列或多列。返回值为一个整数,指受到影响的行数(即更新计数)。对于create table或drop table等不操作行的语句,返回值总为零。
③execute 此方法可用于执行任意SQL语句,返回值为boolean型,执行结果为ResultSet返回true,否则返回false。
String query="select * from user where id=1";
ResultSet rs=stmt.executeQuery(query);
-
Part3 数据后续处理
通过对ResultSet结果集进行索引获取详细数据信息,或是使用get方法获取指定的字段信息。
while(rs.next()){
System.out.println("编号为:"+rs.getInt("id")+"姓名为:"+rs.getString("username"));
}
在使用完数据库连接后需要立马释放连接,否则时间长时间未关闭连接会导致服务器资源占用,甚至出现宕机状态。
rs.close(); //关闭ResultSet对象
stmt.close(); //关闭Statement对象
conn.close(); //关闭Connection对象
完整JDBC连接Oracle数据库示例
import java.sql.*;
public class jdbctest {
public static void main(String[] args) {
String url= "jdbc:oracle:thin:@127.0.0.1:1521:myorcl";
String user="sys as sysdba";
String password="123";
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn= DriverManager.getConnection(url,user,password);
System.out.println("successfully");
Statement stmt=conn.createStatement();
String query="select passwd from users where id=9";
ResultSet rs=stmt.executeQuery(query);
while(rs.next()){
System.out.println("编号为:"+rs.getInt("id")+"姓名为:"+rs.getString("username"));
}
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
口令输入为‘sys as sysdba’,如果只输入sys则会报错java.sql.SQLException: ORA-28009: 应当以 SYSDBA 身份或 SYSOPER 身份建立 SYS 连接
最后
以上就是帅气面包为你收集整理的Java编程 JDBC连接Oracle数据库Part1 JDBCPart2 JDBC连接数据库Part3 数据后续处理的全部内容,希望文章能够帮你解决Java编程 JDBC连接Oracle数据库Part1 JDBCPart2 JDBC连接数据库Part3 数据后续处理所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复