用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - java代码库

连接数据库的工具类

2016-11-21 作者: 小诸葛举报

[java]代码库

//数据库的配置文件databases.properties

jdbc.driver=com.mysql.jdbc.Driver
jdbc.connection.url=jdbc:mysql://localhost:3306/db_book
jdbc.connection.user=root
jdbc.connection.password=wang000123


//加载连接数据库配置文件的工具类
package cn.it.util;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

//获取数据库连接:完成前两步-加载驱动;获取连接数据库的配置文件连接数据库
public class ConfigManager
{
	private static ConfigManager configManager;
	//读取配置文件:用到map集合中Hashtable子类Properties类
	private static Properties properties = new Properties();//获取该实例
	
	//缺省的构造方法,实例化时加载配置文件,私有是防止外界new
	private  ConfigManager()
	{
		String configFile = "databases.properties";    //指定根目录
		
		//properties = new Properties();
		
		InputStream is = ConfigManager.class.getClassLoader().getResourceAsStream(configFile);//把资源文件读入到流
	
		try
		{
			properties.load(is);
			
			is.close();
		} 
		catch (IOException e)
		{
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	//向外界提供一个获取的方法
	public static ConfigManager getInstance()
	{
		if(configManager==null)
		{
			configManager = new ConfigManager();
		}
		return configManager;
	}
	//获取配置文件的value
	public String getValue(String key)
	{
		return properties.getProperty(key);
	}
	
}
//获取数据库连接的工具类
package cn.it.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class DatabaseUtil
{

	private static Connection connection = null;

	// 使用静态方法获取连接数据库
	public static Connection open()
	{

		// 拿到具体的数据库连接的属性值
		String driver = ConfigManager.getInstance().getValue("jdbc.driver");
		String url = ConfigManager.getInstance().getValue("jdbc.connection.url");
		String user = ConfigManager.getInstance().getValue("jdbc.connection.user");
		String password = ConfigManager.getInstance().getValue("jdbc.connection.password");
		//获取数据库相关信息
		System.out.println(driver);
		System.out.println(url);
		System.out.println(password);
		System.out.println(user);
		try
		{
			Class.forName(driver);

			connection = DriverManager.getConnection(url, user, password);
		} 
		catch (Exception e)
		{
			throw new RuntimeException("数据库连接异常!");
		}
		return connection;
	}

	// 关闭数据库
	public static void close(Connection conn)
	{
		if (conn != null)
		{
			try
			{
				conn.close();
			} catch (SQLException e)
			{
				throw new RuntimeException("数据库关闭异常!");
			}
		}
	}

	// 测试数据库连接
	public static void main(String[] args)
	{
		try{
			DatabaseUtil.open();
			System.out.println("连接成功");
		}catch(Exception e)
		{
			System.out.println("连接失败!");
			
			throw new RuntimeException("连接数据库异常!");
		}
		
	}
}


网友评论    (发表评论)

共1 条评论 1/1页

发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...