此次简单的操作将数据从数据库导出生成excel报表以及将excel数据导入数据库

首先建立数据库的连接池:

package jdbc;

import java.io.FileInputStream;
import java.sql.Connection;
import java.util.Properties;

import org.apache.commons.dbcp.BasicDataSource;

public class BaseDAO {
    private static BasicDataSource ds;
    static{                                                                                 
        try {                                                                                 
            //1.读取配置文件conf.properties,采用java.util.Properties来读取                      
            Properties p=new Properties();                                                      
            //2.通过文件流读取并解析配置文件内容,本地数据库用的mysql,所以把配置文件mysql的配置放开,其他数据库配置注释                                                
            p.load(new FileInputStream("src/jdbc.properties"));                                    
            String driverName=p.getProperty("jdbc.driverClassName");//获取驱动名称                        
            String url=p.getProperty("jdbc.url");//获取数据库的url                                
            String user=p.getProperty("jdbc.username");//用户名                                          
            String password=p.getProperty("jdbc.password");//密码                                    
            int maxActive=Integer.parseInt(p.getProperty("jdbc.maxActive"));//获取最大连接数         
            int maxWait=Integer.parseInt(p.getProperty("jdbc.maxWait"));//获取最大等待时间           
            //3.创建一个连接池                                                                  
            ds=new BasicDataSource();                                                           
            ds.setDriverClassName(driverName);//设置驱动名称                                    
            ds.setUrl(url);//设置数据库地址                                                     
            ds.setUsername(user);//设置用户名                                                   
            ds.setPassword(password);//设置密码                                                 
            ds.setMaxActive(maxActive);//设置最大连接数                                         
            ds.setMaxWait(maxWait);//设置最大等待时间                                                                                                                               
        } catch (Exception e) {                                                               
            e.printStackTrace();                                                                
        }                                                                                     
    }
    
    public static  Connection  getConnection() throws Exception {
        try {
            return ds.getConnection();
        } catch (Exception e) {
            System.out.println("连接数据库异常");
            throw e;
        }
    }
    
    public static void close(Connection conn){                                              
        if(conn!=null){                                                                       
            try {                                                                               
                conn.close();                                                                     
            } catch (Exception e) {                                                             
                e.printStackTrace();                                                              
            }                                                                                   
        }                                                                                     
    } 

}
数据库连接池

相关文章: