700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > java 数据库 properties_原生Java读取properties连接数据库

java 数据库 properties_原生Java读取properties连接数据库

时间:2022-12-27 08:22:28

相关推荐

java 数据库 properties_原生Java读取properties连接数据库

将数据库的驱动、url、用户名、密码等信息以键值对的形式存放在properties文件中,工具类初始化时从配置文件中读取所要连接数据库的信息。当需要更改连接的数据库时,只需要更改配置文件即可,而不必改写工具类的代码。

1.在项目中创建一个properties文件,properties文件中的配置文件如下:

jdbc.driver=com.mysql.jdbc.Driver

jdbc.url=jdbc:mysql://localhost:3306/TestDB?useUnicode=true&characterEncoding=utf8&useSSL=false

jdbc.username=root

jdbc.password=123456

复制代码

2.新建一个数据库DBUtil工具类

package com.sdl.dbutil;

import java.io.IOException;

import java.io.InputStream;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.Properties;

/*

* 通过读取Properties连接数据库

*/

public class DBUtil {

private static String driver;

private static String url;

private static String username;

private static String password;

/**

* 静态代码块加载配置文件信息

*/

static {

try {

// 1.通过当前类获取类加载器

ClassLoader classLoader = DBUtil.class.getClassLoader();

// 2.通过类加载器的方法获得一个输入流

InputStream in = classLoader.getResourceAsStream("jdbc.properties");

// 3.创建一个properties对象(集合)

Properties props = new Properties();

// 4.加载输入流

props.load(in);

// 5.获取相关参数的值

driver = props.getProperty("jdbc.driver");

url = props.getProperty("jdbc.url");

username = props.getProperty("jdbc.username");

password = props.getProperty("jdbc.password");

} catch (IOException e) {

e.printStackTrace();

}

}

//注册并获取数据库连接

public static Connection getConnection() throws Exception{

//1.注册驱动

Class.forName(driver);

//2.获取数据库连接

Connection coon = DriverManager.getConnection(url, username, password);

return coon;

}

/**

* 释放数据库资源

* @param rs

* @param st

* @param co

*/

public static void relase(ResultSet rs, Statement st, Connection co) {

try {

if(rs != null) {

rs.close();

}

if(st != null) {

st.close();

}

if(co != null) {

co.close();

}

} catch (SQLException e) {

e.printStackTrace();

}

}

}

复制代码

4.测试一下,新建一个测试类DBUtilTest

package com.sdl.dbutil;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

public class DBUtilTest{

public static void main(String[] args) throws Exception{

Connection coon = DBUtil.getConnection();

//2.书写SQL语句

String sql = "select * from user";

//3.获取SQL语句预编译对象

PreparedStatement ps = coon.prepareStatement(sql);

//4.执行SQL语句

ResultSet rs = ps.executeQuery();

//5.处理结果集

while(rs.next()){

System.out.println(rs.getInt("uid")+" "+rs.getString("username"));

}

//6.释放资源

DBUtil.relase(rs, ps, coon);

}

}

复制代码

5.测试结果

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。