jdbcutils.java_JDBC:JDBC工具类JDBCUtils

JDBC工具类:JDBCUtils

1.在src目录下创建一个文件:jdbc.properties

url=jdbc:mysql://localhost/stu_db ---数据库的url地址

user=root ---数据库的user名

pwd=123456---数据库的密码

driver=com.mysql.jdbc.Driver ---加载JDBC的驱动

2.创建一个util包,util包下创建JDBCUtils.java文件,作为JDCB的工具类

3.JDBCUtils工具类里面,封装两个方法:getConnection()、close(Statement stat, Connection conn, ResultSet rs)。

getConnection()方法:获取JDBC连接,加载JDBC的驱动

public static Connection getConnection() throws SQLException {

return DriverManager.getConnection(url, user, pwd);

}

close(Statement stat, Connection conn, ResultSet rs)方法:释放资源

public static void close(Statement stat, Connection conn, ResultSet rs) {

if (stat != null) {

try {

stat.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

if (conn != null) {

try {

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

if (rs != null) {

try {

rs.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

4.写一个静态代码块,自动获取jdbc.properties文件中的配置信息

创建Properties集合类

//1.创建Properties集合类

Properties pro = new Properties();

加载文件

pro.load(new FileReader(path));

获取对象赋值

url = pro.getProperty("url");

user = pro.getProperty("user");

pwd = pro.getProperty("pwd");

driver = pro.getProperty("driver");

注册驱动

Class.forName(driver);

JDBCUtils的调用:

获取连接对象

conn = JDBCUtils.getConnection();

释放资源

JDBCUtils.close(statement,conn,resultSet);

完整代码:

public class JDBCUtils {

private static String url;

private static String user;

private static String pwd;

private static String driver;

static {

try {

//1.创建Properties集合类

Properties pro = new Properties();

//获取src目录下文件的方式 ClassLoader 类加载器

ClassLoader classLoader = JDBCUtils.class.getClassLoader();

URL resource = classLoader.getResource("jdbc.properties");

String path = resource.getPath();

System.out.println(path);

//2.加载文件

pro.load(new FileReader(path));

//3.获取对象赋值

url = pro.getProperty("url");

user = pro.getProperty("user");

pwd = pro.getProperty("pwd");

driver = pro.getProperty("driver");

// 4.注册驱动

Class.forName(driver);

} catch (IOException e) {

e.printStackTrace();

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

}

/*

* 获取链接对象

* */

public static Connection getConnection() throws SQLException {

return DriverManager.getConnection(url, user, pwd);

}

public static void close(Statement stat, Connection conn, ResultSet rs) {

if (stat != null) {

try {

stat.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

if (conn != null) {

try {

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

if (rs != null) {

try {

rs.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}

本文分享 CSDN - si_en_hao。

如有侵权,请联系 support@oschina.cn 删除。

本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值