sourcedatabasebean.java

来自「数据库远程同步软件NetBeans项目源文件 项目采用Jdesktop集成组件」· Java 代码 · 共 144 行

JAVA
144
字号
package com.qixuan.jdbc.common;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
 * 实现与数据库连接
 */

public class SourceDataBaseBean{
  protected  Connection connection;
    private String filePath = "conf/dbconfig_source.properties";
    private static Properties info = new Properties();
    public static final String DRIVER = "driverClass";
    public static final String URL = "url";

    public String getFilePath() {
        return filePath;
    }

    public void setFilePath(String filePath) {
        this.filePath = filePath;
    }

    public SourceDataBaseBean() {
        init();
    }

    public SourceDataBaseBean(String filePath) {
        this.filePath = filePath;
        init();
    }
    public static final String USER = "user";
    public static final String PWD = "password";


    //配置一个 数据源
    private void init() {
        InputStream in = null;
        try {
            //获取输入流
            in = new FileInputStream(filePath);
            info.load(in);
        } catch (IOException e) {
            in = Thread.currentThread().getContextClassLoader().getResourceAsStream(filePath);
            try {
                info.load(in);
            //e.printStackTrace();
            } catch (IOException ex) {
                e.printStackTrace();
                Logger.getLogger(SourceDataBaseBean.class.getName()).log(Level.SEVERE, null, ex);
            }
        //e.printStackTrace();
        } finally {
            if (in != null) {
                try {
                    in.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }

    }

    public  Connection getConnection() {
        try {
            Class.forName(info.getProperty(DRIVER));//使用类反射加载该驱动类
            //获得一个Connection
            connection = DriverManager.getConnection(info.getProperty(URL), info.getProperty(USER), info.getProperty(PWD));
            return connection;//返回该Connection
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }

    }
//传入查询数据库的sql语句,返回ResultSet

    public  ResultSet getResultSet(String sql) {
        boolean bSuccess = true;
        Statement stmt = null;//声明Statement stmt
        ResultSet rs = null;//声明ResultSet rs
        Connection con = getConnection();//调用getConnetion()方法获得一个Connetion
        if (con == null)//如果Connection 为null则返回假
        {
            bSuccess = false;
        }
        if (bSuccess) {
            try {
                stmt = con.createStatement();//通过Connection创建一个Statemet
                rs = stmt.executeQuery(sql);//执行查询语句,
            } catch (SQLException e) {
                e.printStackTrace();
                bSuccess = false;
            }
        }
        if (bSuccess)//如果执行成功,则返回rs
        {
            return rs;
        } else {
            return null;
        }
    }
    //传入执行数据更新的语句,返回更新结果,真为成功执行

    public  boolean excute(String sql) {
        boolean bSuccess = true;
        Statement stmt = null;//声明Statement stmt
        Connection con = getConnection();//调用getConnetion()方法获得一个Connetion
        if (con == null)//如果Connection 为null则返回假
        {
            bSuccess = false;
        }
        if (bSuccess) {
            try {
                stmt = con.createStatement();//通过Connection创建一个Statemet
                bSuccess = stmt.execute(sql);//执行更新数据操作
            } catch (SQLException e) {
                e.printStackTrace();
                bSuccess = false;
            }
        }
        return bSuccess;
    }
    //释放Connection

    public  void releaseConnection() {
        try {
            if (connection != null)//  如果Connetion 不为null则关闭Connection
            {
                connection.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?