网站建设资讯

NEWS

网站建设资讯

JDBC系列:(2.5)创建JDBCUtils工具类

1、建立db.properties文件

成都创新互联公司主要从事做网站、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务大理州,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792

url=jdbc:MySQL://localhost:3306/testdb
user=root
password=root
driverClass=com.mysql.jdbc.Driver

2、JDBC工具类:JDBCUtil.java

package com.rk.db.utils;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * JDBC的工具类
 * @author RK
 *
 */
public class JDBCUtil
{
	private static final String url;
	private static final String user;
	private static final String password;
	private static final String driverClass;
	
	/**
	 * 静态代码块中(只加载一次)
	 */
	static
	{		
		try
		{
			//读取db.properties文件
			InputStream inStream = JDBCUtil.class.getClassLoader().getResourceAsStream("db.properties");
			
			Properties props = new Properties();
			//加载文件
			props.load(inStream);
			//读取信息
			url = props.getProperty("url");
			user = props.getProperty("user");
			password = props.getProperty("password");
			driverClass = props.getProperty("driverClass");
			
			//注册驱动程序
			Class.forName(driverClass);
		}
		catch (IOException e)
		{
			System.out.println("读取数据库配置文件出错");
			throw new RuntimeException(e);
		}
		catch (ClassNotFoundException e)
		{
			System.out.println("数据库驱程程序注册出错");
			throw new RuntimeException(e);
		}
	}
	
	/**
	 * 获取数据库的连接
	 * @return 数据库连接
	 */
	public static Connection getConnection()
	{
		try
		{
			return DriverManager.getConnection(url,user,password);
		}
		catch (SQLException e)
		{
			System.out.println("获取数据库连接出错");
			throw new RuntimeException(e);
		}		
	}
	
	/**
	 * 关闭Connection、Statement和ResultSet
	 * @param conn 数据库连接
	 * @param stmt	执行SQL语句的命令
	 * @param rs 结果集
	 */
	public static void close(Connection conn,Statement stmt,ResultSet rs)
	{
		closeQuietly(rs);
		closeQuietly(stmt);
		closeQuietly(conn);
	}
	
	/**
	 * 安静的关闭数据库资源
	 * @param ac 实现了AutoCloseable接口的对象
	 */
	public static void closeQuietly(AutoCloseable ac)
	{
		if(ac != null)
		{
			try
			{
				ac.close();
			}
			catch (Exception e)
			{
				e.printStackTrace();
			}
		}
	}
}


本文标题:JDBC系列:(2.5)创建JDBCUtils工具类
文章位置:http://cdweb.net/article/ihohcg.html