zoukankan      html  css  js  c++  java
  • JDBC连接mysql

    1.properties 配置文件

    driver=com.mysql.jdbc.Driver
    #url
    url=jdbc:mysql://localhost:3306/pabitel
    #user
    user=root
    #password
    password=493656696

    2.建一个用来获取连接的类

     1 public class DBHelper {
     2     private DBHelper(){}
     3     private static String url;
     4     private static String driver;
     5     private static String user;
     6     private static String pwd;
     7     private static ThreadLocal<Connection> tl=new ThreadLocal<Connection>();
     8     static{
     9         try {
    10             Properties prop=new Properties();
    11             InputStream is=DBHelper.class.getClassLoader().getResourceAsStream("properties.properties");
    12             prop.load(is);
    13             driver=prop.getProperty("driver");
    14             user=prop.getProperty("user");
    15             pwd=prop.getProperty("password");
    16             url=prop.getProperty("url");
    17             Class.forName(driver);
    18         } catch (Exception e) {
    19             e.printStackTrace();
    20             throw new RuntimeException(e);
    21         }
    22     }
    23     public static Connection getConnection() throws SQLException{
    24         Connection conn=DriverManager.getConnection(url,user,pwd);
    25         tl.set(conn);
    26         return conn;
    27     }
    28     public static void closeConnection(){
    29         Connection conn=tl.get();
    30         if(conn!=null){
    31             try {
    32                 conn.close();
    33             } catch (SQLException e) {
    34                 // TODO Auto-generated catch block
    35                 e.printStackTrace();
    36             }
    37             tl.remove();
    38         }
    39     }
    40 }

    3.threadlocal的使用

    其类似于map,key-value组合,key为线程,value为connection

    4.线程池的使用

    定义线程池private static BasicDataSource ds;

    后续在静态块中设置如下参数

     1        ds=new BasicDataSource();
     3             ds.setDriverClassName(prop.getProperty("driver"));
     4             ds.setUrl(prop.getProperty("url"));
     5             ds.setUsername(prop.getProperty("user"));
     6             ds.setPassword(prop.getProperty("psw"));
     7             ds.setInitialSize(Integer.parseInt(prop.getProperty("initsize")));
     8             ds.setMaxActive(Integer.parseInt(prop.getProperty("maxactive")));
     9             ds.setMaxWait(Integer.parseInt(prop.getProperty("maxwait")));
    10             ds.setMinIdle(Integer.parseInt(prop.getProperty("minidle")));
    11             ds.setMaxIdle(Integer.parseInt(prop.getProperty("maxidle")));

    即可用线程池来获取连接。

  • 相关阅读:
    20150607-0608
    20150423
    感触
    NSString里面的数字
    Git使用相关
    状态栏的设置
    UI相关问题
    分栏(标签)控制器
    导航控制器
    NSAttributedString 属性
  • 原文地址:https://www.cnblogs.com/pabitel/p/5027851.html
Copyright © 2011-2022 走看看