Day1_JDBC——java连接mysql+提取配置

本文介绍了一种使用properties文件动态配置数据库连接参数的方法,避免了硬编码,提高了代码的灵活性和可维护性。通过读取配置文件,可以轻松切换不同的数据库环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.连接数据库的基本步骤

  1. 导入jdbc的jar包
  2. 加载Driver类,目的是执行Driver类的静态代码块
  3. 通过DriverManager获取数据库连接
  4. 关闭连接

例子

@Test
      public void test01() throws Exception{
    	     Connection conn = null;
    	     String url = "jdbc:mysql://localhost:3306/myemployees?userSSL=false";
    	     String user = "root";
    	     String password = "123456";//数据库的密码
             //1.加载Driver类
			Class.forName("com.mysql.jdbc.Driver");
			//2.通过DriverManager获得数据库连接
			conn = DriverManager.getConnection(url, user, password);
		    //3.使用数据库连接对象与数据库进行交互
		    System.out.println(conn);
			//4.关闭连接
				conn.close();
			}

分析: 连接数据库的基本步骤大都差不多,但是不同的数据库之间的驱动包也是不同的,有时连接的url,user,password也不同,所以上面的连接配置参数是已经被写死了。那么如何动态获取参数来连接数据库呢?

二.动态获取数据库连接的参数

根据上面的分析,我们只需动态获取驱动包classDriver、连接路径url、数据库用户名user、数据库密码password即可。我们将参数提取到properties文件中。

在src文件夹里面新建一个File,名为info.properties,后缀名一般用properties,这样我们就可以在这个文件中写连接时的参数,假如这些参数需要改动,那么我们只需要新建另一个properties文件并输入新的参数即可。
例子
info.properties

driverClass=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/myemployees?useSSL=false
user=root
password=123456

TestJDBC01.java

@Test
	public void test02() throws IOException {
          //1.读取配置文件中的参数
		  Properties info = new Properties();
		  //使用当前自定义类的类加载器去类路径下加载info.properties文件并转换为输入流
		  InputStream is = TestJDBC01.class
				                     .getClassLoader()
				                     .getResourceAsStream("info.properties");
		  info.load(is);
		  String driverClass = info.getProperty("driverClass");
		  String url = info.getProperty("url");
		  String user = info.getProperty("user");
		  String password = info.getProperty("password");
		  System.out.println("driverClass:" + driverClass);
		  System.out.println("url:" + url);
		  System.out.println("user:" + user);
		  System.out.println("password:" + password);
	}

这样就可以根据不同的配置文件获取不同的参数方案。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值