读取配置文件中数据库设置信息来创建connection对象

package com.atguigu.jdbc;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.SQLException;
import java.util.Properties;

import org.junit.Test;

public class JDBCTest {

/**
* 编写一个通用的方法,在不修改源程序的情况下,可以获取任何数据库的连接
* 解决方案:把数据库驱动Driver实现类的全类名、url、user\password放入一个配置文件中,通过修改配置文件的方式实现
* 和具体的数据库解耦
* @throws ClassNotFoundException
* @throws IllegalAccessException
* @throws InstantiationException
* @throws SQLException
* @throws IOException
*/

public Connection getConnection() throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException, IOException{
String driverClass=null;
String jdbcUrl=null;
String user=null;
String password=null;
//读取类路径下的jdbc.properties文件
InputStream in=getClass().getClassLoader().getResourceAsStream("jdbc.properties");
Properties properties=new Properties();
properties.load(in);
driverClass=properties.getProperty("driverClass");
jdbcUrl=properties.getProperty("jdbcUrl");
user=properties.getProperty("user");
password=properties.getProperty("password");
//通过反射创建Driver对象
Driver driver=(Driver)Class.forName(driverClass).newInstance();
Properties info=new Properties();
info.setProperty("user", user);
info.setProperty("password", password);
//通过Driver的connect方法获取数据库连接
Connection connection=driver.connect(jdbcUrl, info);
return connection;
}

@Test
public void TestGetConnection() throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException, IOException{
System.out.println(getConnection());
}

}

时间: 2024-08-24 16:50:00

读取配置文件中数据库设置信息来创建connection对象的相关文章

您配置文件中的设置 (空密码的 root) 与 MySQL 默认管理员账户对应...的解决办法

您配置文件中的设置 (空密码的 root) 与 MySQL 默认管理员账户对应.……解决办法很简单:1.修改[email protected]权限的密码. 打开wamp的phpmyadmin,进入它的管理界面,点击权限,这时页面上会显示一张用户权限表,找到用户为: root.主机为:localhost的数据行,点击后面的修改按钮,弹出详细的权限配置页面,找到里面的修改密码项, 两次输入你想修改的密码后,点击执行就完成了数据库中[email protected]权限的密码修改.2.修改phpmya

Springboot如何读取配置文件中的属性

Springboot自定义属性注入 SpringBoot是基于约定的,所以很多配置都有默认值,但如果想使用自己的配置替换默认配置的话,就可以使用application.properties或者application.yml(application.yaml)进行配置. SpringBoot默认会从resources目录下加载application.properties或application.yml(application.yaml)文件 下面介绍如何获取配置文件中的属性 我们以自定义数据源为例

java.util.Properties 读取配置文件中的参数

用法 getProperty方法的返回值是String类型. java.util.Properties 读取配置文件中的参数 //读取配置文件 FileInputStream inStream = null; try { inStream = new FileInputStream("/fetchedfile/redis.conf"); Properties prop = new Properties(); prop.load(inStream); Field field; Strin

Hibernate数据库配置文件中数据库名称错误问题

之前碰见一个项目部署在武汉,又部署在南京.由于是配合别人做的,数据库的搭建由别人完成,我们只是负责数据库中的几个表的数据处理.以前的数据库名称是projectwh,部署南京时,开始也是使用的projectwh的名称,后来对方重新创建了一个数据库projectnj(projectwh没有删除),我们对应的将Hibernate配置文件中的url中的数据库名称修改了成projectnj,但是发现存取操作的目标仍然会是projectwh中的表格. 一般想来Hibernate配置文件中应该只有url跟数据

java后台读取配置文件中key与value -----demo

public class ResourcesUtils { /* * @description:根据属性获取文件名 * * @param:propertyName文件的属性名 * * @return:返回文件的属性值 * */ public static String getByName( String propertyName) { String resultM = "";//返回结果 ResourceBundle bundle = ResourceBundle.getBundle(

【SpringBoot】【3】读取配置文件中的参数并配置给全局使用

前言: 读取配置文件参数的方法:@Value("${xx}")注解.但是@Value不能为static变量赋值,而且很多时候我们需要将参数放在一个地方统一管理,而不是每个类都赋值一次. 正文: 注意:一定要给类加上@Component 注解 application.xml test: app_id: 12345 app_secret: 66666 is_active: true 统一读取配置文件参数: package com.example.demo.config; import or

java中读取配置文件中数据的具体方法

1.先在项目中创建一个包(如:config),再创建一个配置文件(如:a.properties),添加配置信息如下:比如 name=kaka age=28 2.代码: import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class PropertyTest {  public static void main(String[] args) {   PropertyT

sublime_Text3中snippet设置信息头(包括作者、日期)

1.tool->new snippet 创建一个新的snippet,并保存为author.sublime-snippet(最好在该目录(User)下再创建一个MySnippet目录):其内容: 1 <snippet> 2 <content><![CDATA[ 3 /** 4 * ============================ 5 * @Author: XX 6 * @Version: 1.0 7 * @DateTime: ${1:alt+t} 8 * ====

【转】Revit二次开发——读取cad中的文字信息

Revit读取cad的文字信息需要借助Teigha的开源dll,在程序中添加下图中红色框的dll文件的引用,其他的dll文件全部放在同一个文件夹中即可,运行的时候,会自动把这些dll文件全部复制到bin文件当中,同时,在Revit中运行插件,Revit也会自动加载这些dll文件. 以下是关键方法,在Revit里读取cad文字信息,图层信息,几何信息等. using System; using System.Collections.Generic; using System.Linq; using