首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Java联接Oracle(高级篇)

2012-08-24 
Java连接Oracle(高级篇)在项目工程目录下新建一个config文件夹,在config文件夹里创建一个database.propert

Java连接Oracle(高级篇)

在项目工程目录下新建一个config文件夹,在config文件夹里创建一个database.properties文件,配置相关Oracle数据库的driver、url、username、password。

#Oraclejdbc.driver=oracle.jdbc.driver.OracleDriverjdbc.url=jdbc:oracle:thin:@localhost:1521:moonlightjdbc.username=scottjdbc.password=tiger
?

在DBUtil.java中封装数据库常用操作。

import java.io.FileInputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.Properties;public class DBUtil {public static Connection getConnection() {Connection conn = null;Properties props = null;FileInputStream in = null;try {props = new Properties();in = new FileInputStream("config/database.properties");props.load(in);in.close();String jdbcdriver = props.getProperty("jdbc.driver");if (jdbcdriver != null) {System.setProperty("jdbc.driver", jdbcdriver);}String url = props.getProperty("jdbc.url");String username = props.getProperty("jdbc.username");String password = props.getProperty("jdbc.password");conn = DriverManager.getConnection(url, username, password);} catch (Exception e) {e.printStackTrace();}return conn;}public static void close(Connection conn) {if (conn != null) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}}public static void close(PreparedStatement pstmt) {if (pstmt != null) {try {pstmt.close();} catch (SQLException e) {e.printStackTrace();}}}public static void close(ResultSet rs) {if (rs != null) {try {rs.close();} catch (SQLException e) {e.printStackTrace();}}}}
?

最后,在JDBCDemo.java中测试一下是否配置连接成功。

import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;public class JDBCDemo {public static void main(String[] args) throws Exception {Connection conn = null;PreparedStatement pstmt = null;ResultSet rs = null;String keyword = "SMI";String sql = "SELECT empno, ename, job FROM emp WHERE ename LIKE ?";conn = DBUtil.getConnection();pstmt = conn.prepareStatement(sql);pstmt.setString(1, "%" + keyword + "%");rs = pstmt.executeQuery();while (rs.next()) {int empno = rs.getInt("empno");String ename = rs.getString("ename");String job = rs.getString("job");System.out.println("empno: " + empno + ", ename: " + ename+ ", job: " + job);}DBUtil.close(rs);DBUtil.close(pstmt);DBUtil.close(conn);}}
?

?

热点排行