日期:2014-05-16 浏览次数:20390 次
数据库连接类:ConnOracl
?
package com.zgc.db.oracle; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import org.apache.log4j.Logger; /** * 传统方式连接Oracle数据库 * * 性能、可靠性、稳定性会随着用户访问量的增加逐渐下降 * 根本问题与Connection对象的创建有关 * * @author Zhanggc * 日期:2011年3月9日 09:20:17 */ public class ConnOral { /** * 定义变量 */ private static Connection conn; private static Logger log = Logger.getLogger(ConnOral.class); /** * 数据库驱动 */ private static final String driver = "oracle.jdbc.driver.OracleDriver"; /** * 数据库连接串 */ private static final String url = "jdbc:oracle:thin:@127.0.0.1:1521:orcl"; /** * 用户名 */ private static final String username = "jnzb"; /** * 密码 */ private static final String password = "jnzb"; /** * 驱动类实例 */ private static Object driverInstance = null; /** * 连接数据库 * @return * @throws SQLException */ public static Connection getConn() throws SQLException{ if (driverInstance == null){ try { driverInstance = Class.forName(driver); log.info("Oracle数据库驱动实例不存在,成功创建了一个!"); } catch (Exception e) { e.printStackTrace(); } } conn = DriverManager.getConnection(url, username, password); return conn; } /** * 关闭数据库连接 */ public static void close(Connection connection,PreparedStatement pstmt,ResultSet rs){ try { if (rs != null){ rs.close(); } } catch (Exception e) { log.error("关闭ResultSet对象时失败,原因是"+e.getMessage()); } try { if (pstmt != null){ pstmt.close(); } } catch (Exception e) { log.error("关闭PreparedStatement对象时失败,原因是"+e.getMessage()); } try { if (connection != null){ connection.close(); } } catch (Exception e) { log.error("关闭Connection对象时失败,原因是"+e.getMessage()); } } }
?在上面代码中,数据库连接串,即:
?
private static final String url = "jdbc:oracle:thin:@127.0.0.1:1521:orcl";
?
?中的orcl是sid,千万不能出错,它可通过以下代码来得到:
?
select instance_name from v$instance;或 select name from v$database;
?另外,这种连接方式需要jar包(作者以提供),下载后拷到工程的lib文件夹中即可使用。如果还是不能,右键单击ojdbc14.jar,重新Build Path。