#|【JDBC】3.工具类-JDBCUtils

获取连接操作以及资源的关闭放到一个工具类中—JDBCUtils
将获取连接操作代码

//提供Properties,并加载指定配置文件的流 Properties pros = new Properties(); InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("druid.properties"); //加载 pros.load(is); //通过DruidDataSourceFactory创建一个数据源 DataSource dataSource = DruidDataSourceFactory.createDataSource(pros); //通过数据源获取连接 Connection connection = dataSource.getConnection(); return connection;

JDBCUtils 类
package com.atguigu.java1.util; import com.alibaba.druid.pool.DruidDataSourceFactory; import javax.sql.DataSource; import java.io.InputStream; import java.sql.Connection; import java.sql.SQLException; import java.util.Properties; /** * 提供JDBC的工具类,用于获取数据库的连接等操作 */ public class JDBCUtils {/** * 获取数据库连接的方法 * * @return * @throws Exception */ public static Connection getConnection() throws Exception {//通过数据源获取连接 Connection connection = dataSource.getConnection(); return connection; }private static DataSource dataSource ; static{ //静态代码块 //提供Properties,并加载指定配置文件的流 try {Properties pros = new Properties(); InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("druid.properties"); pros.load(is); //由于静态代码块只执行一次,所以我们自始至终就创建过一个DataSource dataSource = DruidDataSourceFactory.createDataSource(pros); } catch (Exception e) {e.printStackTrace(); }}//关闭连接 public static void close(Connection connection){if(connection != null){try {connection.close(); } catch (SQLException e) {e.printStackTrace(); } } }}

测试工具类
package com.atguigu.java1.test; import com.atguigu.java1.util.JDBCUtils; import org.junit.Test; import java.sql.Connection; /** * 测试工具类 */ public class JDBCUtilsTest {@Test public void test1() throws Exception {Connection connection = JDBCUtils.getConnection(); System.out.println(connection); } }

【#|【JDBC】3.工具类-JDBCUtils】#|【JDBC】3.工具类-JDBCUtils
文章图片

    推荐阅读