多平台统一管理软件接口,如何实现多平台统一管理软件接口
257
2022-11-01
java中封装JDBC工具类的实例分析
对于能够重复使用的代码,我们最好的方法是对它们进行封装,然后在下次使用的使用就可以直接调用了。本篇所要提到的是JDBC工具类,相信大家在学习java时都接触过。那么对于封装它的方法,本篇先对工具类进行简单的说明,列出有关的封装步骤,然后带来相关的实例。
1、说明
在java开发过程中,代码中时常用到一些Scanner、Random一样的类,他们是键盘录入,生成随机数的类,像一个工具一样,在java中被称为工具类。
2、步骤
封装GUCfmOsHDJDBC工具类
加入获取数据库连接对象的方法
加入释放连接的方法
3、实例
package com.qianfeng.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* JDBC工具类
* 有获取连接的方法
* @author dushine
*/
public class JDBCUtil {
/**
* 获取数据库连接的方法
* @return Connection conn
* @throws SQLException
*/
public static Connection getConnection() throws SQLException {
String url = "jdbc:mysql://localhost:3306/class?useSSL=false";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url,user,password);
return conn;
}
/**
* 释放连接的方法
* @param conn
* @throws SQLException
*/
public static void releaseSourse(Connection conn) throws SQLException {
if (conn != null) {
conn.close();
}
}
/**
* 释放连接的方法
* @param conn 数据库连接对象
* @param stmt 执行SQL语句的对象
* @throws SQLException
*/
public static void releaseSourse(Connection conn,Statement stmt) throws SQLException {
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
}
/**
* 释放连接的方法
* @param conn 数据库连接对象
* @param stmt 执行SQL语句的对象
* @param resultSet 执行SQL语句的返回的结果集
* @throws SQLException
*/
public static void releaseSourse(Connection conn,Statement stmt,ResultSet resultSet) throws SQLException {
if (resultSet != null) {
resultSet.close();
}
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
}
}
实例扩展:
public class JDBCUtil {
//连接对象
private Connection connection = null;
//数据库操作对象
private PreparedStatement ps = null;
//数据库连接地址
private static String url = "jdbc:mysql://localhost:3306/";
//用户名
private static String user = "root";
//密码
private static String password = "123456";
//静态代码块 注册驱动
//类加载的时候,只执行一次
static{
try {
Class.forName("com.mysql.jdbc.Driver");
GUCfmOsHD } catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
//获取连接对象
public Connection getConnection(){
//Connection conn = null;
try {
connection = DriverManager.getConnection(url,user,password);
} catch (SQLException e) {
e.printStackTrace();
System.out.println("数据库连接失败....");
}
System.out.println("数据库连接成功...");
return connection;
}
//获取数据库操作对象
public PreparedStatement createPreparedStatement(String sql){
connection = getConnection();
try {
ps = connection.prepareStatement(sql);
} catch (SQLException e) {
e.printStackTrace();
}
return ps;
}
//释放资源
public void close(){
//释放连接对象
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
//释放数据库操作对象
if (ps != null) {
try {
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
System.out.println("释放资源成功...");
}
//方法的重载
public void close(ResultSet reuslt){
// 调用释放资源的方法
close();
// 释放查询结果集对象
if (reuslt != null) {
try {
reuslt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~