zoukankan      html  css  js  c++  java
  • Java通用oracle和mysql数据库连接

    Java中oracle数据库连接写一个通用类UBUtil(){}

    import java.io.InputStream;
    import java.sql.*;
    import java.util.Properties;
    
    public class DBUtil {
        private static Connection con;
        private static String url;
        private static String user;
        private static String pwd;
    
        public DBUtil() {
    
        }
        static {
            try {
                Class.forName("oracle.jdbc.driver.OracleDriver");/*如果是MySQL就改为Class.forName("com.mysql.jdbc.Driver");*/
                InputStream is = DBUtil.class.getResourceAsStream("/db.properties");//db.properties 是一个用户配置文件传用户名密码
                Properties prop=new Properties();
                prop.load(is);
                url=prop.getProperty("url");
                user=prop.getProperty("user");
                pwd=prop.getProperty("password");
                con = DriverManager.getConnection(url, user, pwd);
            }catch (Exception e){
            }
        }
        public static ResultSet find(String sql){
            con=getCon();
            try {
                Statement smt=con.createStatement();
                ResultSet rs=smt.executeQuery(sql);
                return rs;
            } catch (SQLException e) {
                e.printStackTrace();
                return null;
            }
        }
        public static ResultSet find(String sql,Object ...pram){//...pram数组
            con=getCon();
            try {
                PreparedStatement smt=con.prepareStatement(sql);
                for (int i=0;i<pram.length;i++){
                    smt.setObject(i+1,pram[i]);
                }
                ResultSet rs=smt.executeQuery();
                return rs;
            } catch (SQLException e) {
                e.printStackTrace();
                return null;
            }
        }
        public static void insert(String sql,Object ...pram){//...pram数组
            con=getCon();
            try {
                PreparedStatement smt=con.prepareStatement(sql);
                for (int i=0;i<pram.length;i++){
                    smt.setObject(i+1,pram[i]);
                }
                smt.executeUpdate();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        public static Connection getCon(){
            try {
                if(con==null||con.isClosed())
                    con = DriverManager.getConnection(url, user, pwd);
            } catch (SQLException e) {
                e.printStackTrace();
            }
            return con;
        }
    }

     最后补一下db.properties中格式:

    #db.properties
    #数据配置文件
    url=jdbc:oracle:thin:@localhost:1521:XE #或者url=::thin:@localhost:1521:xe
    #url=jdbc:mysql://127.0.0.1:3306/diarydb?useUnicode=true&characterEncoding=UTF-8  #mysql的url
    user=root
    password=password
    

      

      

      

  • 相关阅读:
    7-2 一元多项式的乘法与加法运算 (20 分)
    cvc-complex-type.2.4.a: Invalid content was found starting with element(servlet)
    MOOC 2.3 队列
    MOOC 2.2 堆栈
    MOOC 2.1 线性表及其实现
    MOOC 1.3 最大子列和
    计时程序
    MOOC 1.1 什么是数据结构
    poj3253
    二分法查找——对数
  • 原文地址:https://www.cnblogs.com/feipengting/p/7606042.html
Copyright © 2011-2022 走看看