zoukankan      html  css  js  c++  java
  • Druid(德鲁伊)连接数据库

    Druid(德鲁伊)连接数据库:

      连接mysql必导包【mysql-connector-java-5.1.47.jar】

      这里提供了连接mysql相关jar包的所有版本: https://mvnrepository.com/artifact/mysql/mysql-connector-java

      使用druid连接数据库,首先需要导入相关jar包【例:druid-1.1.20.jar,log4j-1.2.17.jar,log4j-api-2.11.2.jar,log4j-core-2.11.2.jar】

      这里提供相关jar包下载网站: https://mvnrepository.com/

    **连接配置文件 **

    # 驱动加载
    driverClassName=com.mysql.jdbc.Driver
    # 注册驱动
    url=jdbc:mysql://127.0.0.1:3306/database_name?useUnicode=true&characterEncoding=utf8&useSSL=true
    # 用户名
    username=root
    # 密码
    password=root
    # 初始化连接数
    initialSize=10
    # 最大连接数量
    maxActive=10
    # 最大空闲连接,已过时
    # maxIdle = 10
    # 最小空闲连接
    minIdle=10
    # 属性类型的字符串,通过别名的方式配置扩展插件, 监控统计用的stat 日志用log4j 防御sql注入:wall
    filters=stat,log4j,wall
    

    连接工具类

    package com.demo.util;
    
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Properties;
    
    import com.alibaba.druid.pool.DruidDataSource;
    import com.alibaba.druid.pool.DruidDataSourceFactory;
    
    /**
     * 	druid连接工具类
     */
    public class JDBCUtil {
    	
        static DruidDataSource dataSource;
    	
    	static {
    		 Properties prop = new Properties();
    	        try {
    	            prop.load(JDBCUtil.class.getClassLoader().getResourceAsStream("druid.properties"));
    	            dataSource = (DruidDataSource)DruidDataSourceFactory.createDataSource(prop);
    	            //dataSource.addFilters("stat,log4j,wall");
    	        } catch (IOException e) {
    	            e.printStackTrace();
    	        } catch (Exception e) {
    	            e.printStackTrace();
    	        }
    	}
    	/**
    	 * 	获取连接
    	 * @return
    	 */
    	public static Connection getConn() {
    		Connection connection = null;
    		try {
    			connection = dataSource.getConnection();
    		} catch (SQLException e) {
    			e.printStackTrace();
    		}
    		return connection;
    	}
    	/**
    	 * 	释放资源
    	 * @param conn
    	 * @param prep
    	 */
    	public static void close(Connection conn,PreparedStatement prep) {
    		try {
    			if(prep != null) {
    				prep.close();
    			}
    			if(conn != null) {
    				conn.close();
    			}
    		} catch (SQLException e) {
    			e.printStackTrace();
    		}
    	}
    	
    	
    	public static void close(Connection conn,PreparedStatement prep,ResultSet rs) {
    		try {
    			if(rs != null) {
    				rs.close();
    			}
    			close(conn,prep);
    		} catch (SQLException e) {
    			e.printStackTrace();
    		}
    	}
    	
    	public static void main(String[] args) {
    		System.out.println(getConn());
    	}
    	
    }
    
  • 相关阅读:
    国际商务金融
    [手游新项目历程]第22天-野指针
    疯狂的A股:“杠杆牛市”后,是否坠入新轮回?
    [硬盘分区]EASEUS怎么用(EASEUS Partition Master使用教程)
    [硬盘分区]EASEUS怎么用(EASEUS Partition Master使用教程)
    linux下如何更新glibc包
    游戏是任何行业的垂直行业,《游戏改变世界》读后感
    虚函数实现原理(转)
    虚函数实现原理(转)
    bzoj2783
  • 原文地址:https://www.cnblogs.com/lyang-a/p/12171385.html
Copyright © 2011-2022 走看看