使用JDBC实现数据插入Oracle(jdbc插入oracle)
使用JDBC实现数据插入Oracle
JDBC是Java Database Connectivity的缩写,它是Java语言用于访问关系数据库的标准API。通过JDBC API,Java应用程序可以方便地实现对各种关系型数据库的访问和操作。其中Oracle作为一种主流的关系型数据库,是JDBC API中支持的数据库之一。
本文将介绍如何使用JDBC API实现数据插入Oracle数据库的功能。具体实现步骤如下:
## 1. 导入Oracle JDBC驱动包
JDBC驱动包是用于连接Oracle数据库的必要组件。在本文中,我们选择Oracle官方提供的JDBC驱动包,下载地址为:https://www.oracle.com/database/technologies/jdbc-drivers-12c-downloads.html
下载后将该驱动包加入到Java项目的类路径中。
## 2. 创建数据库连接
在Java代码中使用DriverManager.getConnection()方法创建一个数据库连接。
“`java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConnectionFactory {
private static Connection connection;
private static final String URL = “jdbc:oracle:thin:@localhost:1521:xe”;
private static final String USERNAME = “username”;
private static final String PASSWORD = “password”;
public static Connection getConnection() {
try {
Class.forName(“oracle.jdbc.driver.OracleDriver”);
connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return connection;
}
}
上述代码中,我们通过Class.forName()方法加载Oracle的JDBC驱动类,然后通过DriverManager.getConnection()方法获取Connection对象。
需要注意的是,在URL中,我们使用了Oracle的Thin Driver连接方式,并指定了数据库的地址、端口号、以及数据库实例名xe。另外,在USERNAME和PASSWORD中分别指定了Oracle数据库的用户名和密码。
## 3. 插入数据
完成对数据库连接的创建后,我们可以使用PreparedStatement对象来执行数据插入操作。
```javaimport java.sql.Connection;
import java.sql.PreparedStatement;import java.sql.SQLException;
public class InsertDataExample { public static void mn(String[] args) {
String sql = "INSERT INTO employee (id, name, age, gender) VALUES (?, ?, ?, ?)"; try (Connection conn = ConnectionFactory.getConnection();
PreparedStatement pstmt = conn.prepareStatement(sql)) { pstmt.setInt(1, 1001);
pstmt.setString(2, "Tom"); pstmt.setInt(3, 25);
pstmt.setString(4, "M"); pstmt.executeUpdate();
System.out.println("Data inserted successfully."); } catch (SQLException e) {
e.printStackTrace(); }
}}
上述代码中,我们使用占位符?代替了实际的参数值,然后通过PreparedStatement对象的setXXX()方法设置每个参数的具体值。最后调用pstmt.executeUpdate()方法执行数据插入操作。
## 4. 关闭数据库连接
完成数据插入后,我们应该及时关闭数据库连接以释放资源。
“`java
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class CloseConnectionExample {
public static void mn(String[] args) {
Connection conn = null;
PreparedStatement pstmt = null;
try {
String sql = “INSERT INTO employee (id, name, age, gender) VALUES (?, ?, ?, ?)”;
conn = ConnectionFactory.getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, 1002);
pstmt.setString(2, “Mary”);
pstmt.setInt(3, 30);
pstmt.setString(4, “F”);
pstmt.executeUpdate();
System.out.println(“Data inserted successfully.”);
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
上述代码中,我们在finally块中调用了PreparedStatement和Connection对象的close()方法来关闭数据库连接。
## 结论
通过上述步骤,我们成功地使用JDBC API实现了数据插入Oracle数据库的功能。需要注意的是,在实际应用中,我们应该尽量使用连接池等技术来优化数据库连接的性能,同时也需要考虑SQL注入等安全问题。