JDBC是Java Database Connectivity的缩写,指Java程序与关系型数据库之间的连接与通信管理,其中最常用的是Oracle数据库。下面将着重介绍Oracle数据库的JDBC写法。
1. 数据库连接
首先,需要通过DriverManager获取数据库连接,并使用Connection对象与目标数据库建立连接。
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","username","password");
在连接串中,“@localhost:1521”表示Oracle数据库所在主机的IP地址及端口号,其中“localhost”可以替换为实际的IP地址,“orcl”是实际创建的数据库实例名称;“username”和“password”分别代表登录数据库的用户名和密码。
2. 数据查询
查询Oracle数据库需要用到执行查询操作的Statement对象和接收结果集的ResultSet对象。
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM table_name WHERE column_name = 'value';");
对于PreparedStatement操作,则需要将参数填入预处理对象中。
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM table_name WHERE column_name = ?");
pstmt.setString(1,"value");
ResultSet rs = pstmt.executeQuery();
3. 数据更新
对于更新数据库中的数据,需要使用Statement或PreparedStatement对象进行操作。
Statement stmt = conn.createStatement();
stmt.executeUpdate("UPDATE table_name SET column_name = 'new_value' WHERE column_name = 'old_value';");
PreparedStatement操作同样需要填充参数。
PreparedStatement pstmt = conn.prepareStatement("UPDATE table_name SET column_name = ? WHERE column_name = ?");
pstmt.setString(1,"new_value");
pstmt.setString(2,"old_value");
pstmt.executeUpdate();
4. 事务管理
在处理一些复杂业务时,可能需要使用事务,确保修改数据的过程是原子的。
conn.setAutoCommit(false); // 禁止自动提交
try {
// 数据库操作
conn.commit(); // 提交事务
} catch (sqlException e) {
e.printstacktrace();
conn.rollback(); // 回滚事务
}
5. 资源释放
在使用完相关资源后,务必保证它们被正常关闭,释放内存。
rs.close();
stmt.close();
conn.close();
以上就是常用的Oracle数据库JDBC操作示例,需要注意安全和性能问题,尽可能使用PreparedStatement和批处理等优化技术。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。