当前位置:首页 > Java

java如何连接oracle数据库

2026-03-17 20:26:47Java

使用JDBC连接Oracle数据库

确保已安装Oracle JDBC驱动(如ojdbc8.jarojdbc10.jar),驱动需添加到项目依赖中。以下是连接步骤:

1. 加载驱动类

Class.forName("oracle.jdbc.driver.OracleDriver");

2. 建立数据库连接 使用DriverManager.getConnection()方法,需提供URL、用户名和密码:

String url = "jdbc:oracle:thin:@localhost:1521:ORCL";
String username = "your_username";
String password = "your_password";
Connection connection = DriverManager.getConnection(url, username, password);
  • URL格式说明:jdbc:oracle:thin:@host:port:SID(或服务名替换SID)

使用连接池(以HikariCP为例)

1. 添加依赖 Maven项目中需包含:

<dependency>
    <groupId>com.zaxxer</groupId>
    <artifactId>HikariCP</artifactId>
    <version>5.0.1</version>
</dependency>
<dependency>
    <groupId>com.oracle.database.jdbc</groupId>
    <artifactId>ojdbc8</artifactId>
    <version>21.9.0.0</version>
</dependency>

2. 配置连接池

HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:oracle:thin:@localhost:1521:ORCL");
config.setUsername("your_username");
config.setPassword("your_password");
config.setMaximumPoolSize(10);

HikariDataSource dataSource = new HikariDataSource(config);
Connection connection = dataSource.getConnection();

异常处理与资源释放

1. 使用try-with-resources 确保连接、Statement和ResultSet自动关闭:

try (Connection conn = DriverManager.getConnection(url, user, pass);
     Statement stmt = conn.createStatement();
     ResultSet rs = stmt.executeQuery("SELECT * FROM employees")) {
    while (rs.next()) {
        System.out.println(rs.getString("employee_name"));
    }
} catch (SQLException e) {
    e.printStackTrace();
}

2. 手动关闭资源 若未使用try-with-resources,需在finally块中关闭:

Connection conn = null;
try {
    conn = DriverManager.getConnection(url, user, pass);
    // 执行操作
} catch (SQLException e) {
    e.printStackTrace();
} finally {
    if (conn != null) {
        try { conn.close(); } 
        catch (SQLException e) { e.printStackTrace(); }
    }
}

常见参数配置

1. 连接超时设置

config.setConnectionTimeout(30000); // 30秒

2. 验证连接有效性

config.setConnectionTestQuery("SELECT 1 FROM DUAL");

3. 使用TNS别名连接 URL格式:

java如何连接oracle数据库

String url = "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hostname)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=servicename)))";

注意事项

  • 生产环境避免硬编码凭据,建议使用配置文件或环境变量。
  • SID与服务名不同,需根据Oracle版本选择正确标识。
  • 防火墙需开放1521端口(默认监听端口)。

标签: 数据库java
分享给朋友:

相关文章

java如何创建线程

java如何创建线程

创建线程的方法 在Java中,创建线程主要有两种方式:继承Thread类和实现Runnable接口。以下是具体实现方法: 继承Thread类 通过继承Thread类并重写run()方法可以创建线程。…

java如何react

java如何react

在Java中使用React 要在Java项目中集成React,通常需要将React前端与Java后端结合使用。以下是几种常见的方法: 使用Spring Boot作为后端 Spring Boot是一个…

如何编译java文件

如何编译java文件

安装JDK 确保系统已安装Java Development Kit(JDK)。可通过命令行输入 javac -version 和 java -version 验证。若未安装,需从Oracle或Open…

如何编写java

如何编写java

编写Java程序的基本步骤 安装Java开发工具包(JDK),确保系统环境变量配置正确。可以从Oracle官网下载最新版本的JDK并进行安装。 选择一个合适的集成开发环境(IDE),如Eclipse…

java如何调试

java如何调试

调试Java程序的基本方法 使用IDE内置的调试工具(如IntelliJ IDEA或Eclipse)是最常见的方式。在代码行号旁点击设置断点,启动调试模式后,程序会在断点处暂停,允许查看变量值、调用栈…

php 实现 java md5

php 实现 java md5

在 PHP 中实现与 Java 相同的 MD5 哈希算法,关键在于确保编码和输出格式的一致性。以下是具体实现方法和注意事项: 确保字符串编码一致 Java 的 String.getBytes() 默…