zoukankan      html  css  js  c++  java
  • JDBCUtil

    package com.baizhi.JDBCUtil;
    
    import java.io.IOException;
    import java.io.InputStream;
    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 JDBCUtil {
        static ThreadLocal<Connection> tl = new ThreadLocal<Connection>(); 
        private static String className;
        private static String url;
        private static String user;
        private static String pwd;
        static Properties pro = null;
        static {
            //创建properties
            pro = new Properties();
            //获取输入流
            InputStream is = JDBCUtil.class.getResourceAsStream("/JDBCUtil.properties");
            //读取JDBCUtil.properties
            try {
                pro.load(is);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            //获取键值对
             className = pro.getProperty("ClassName");
             url = pro.getProperty("url");
             user = pro.getProperty("user");
             pwd = pro.getProperty("psw");
        }
        //加载驱动.获取连接
        public static Connection getConn() {
            if (tl.get() == null) {
                try {
                    Class.forName(className);
                    Connection conn = DriverManager.getConnection(url, user,pwd);
                    tl.set(conn);
                } catch (Exception e) {
                    throw new RuntimeException(e);
                }
            } 
            return tl.get();
        }
        
        
        //关闭资源    
        public static void closeAll(Connection conn,PreparedStatement pstm,ResultSet rs) {
            if(rs != null) {
                try {
                    rs.close();
                } catch (SQLException e) {
                    throw new RuntimeException(e);
                }
            }
            if(pstm != null) {
                try {
                    pstm.close();
                } catch (SQLException e) {
                    throw new RuntimeException(e);
                }
            }
            if(conn != null) {
                try {
                    tl.remove();
                    conn.close();    
                } catch (SQLException e) {
                    throw new RuntimeException(e+"关闭conn链接出错");
                }
            }
        }
    }

    配置文件 (properties)

    ClassName = oracle.jdbc.OracleDriver
    url = jdbc:oracle:thin:@localhost:1521:xe
    user = hr
    psw = hr
    以粮为纲全面发展
  • 相关阅读:
    ios -为什么用WKWebView加载相同的html文本,有时展示的内容却不一样。
    weex
    [Objective-C 面试简要笔记]
    [iOS 基于CoreBluetooth的蓝牙4.0通讯]
    [SVN Mac自带SVN结合新浪SAE进行代码管理]
    [SVN Mac的SVN使用]
    [iOS dispatch_once创建单例]
    [iOS UI设计笔记整理汇总]
    [iOS 视频流开发-获得视频帧处理]
    [iOS OpenCV错误解决]
  • 原文地址:https://www.cnblogs.com/alexliuf/p/13515176.html
Copyright © 2011-2022 走看看