封装jdbc 博客分类: java
程序员文章站
2024-03-24 11:20:52
...
1.定义实体类
package com.wangxuegang.model; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; public class JdbcObject { private Connection connection; //获取连接 private PreparedStatement preStatement; //执行器 private ResultSet resultSet; //返回结果 public Connection getConnection() { return connection; } public void setConnection(Connection connection) { this.connection = connection; } public PreparedStatement getPreStatement() { return preStatement; } public void setPreStatement(PreparedStatement preStatement) { this.preStatement = preStatement; } public ResultSet getResultSet() { return resultSet; } public void setResultSet(ResultSet resultSet) { this.resultSet = resultSet; } }
2.jdbc工具类
package com.wangxuegang.util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ResourceBundle; import com.wangxuegang.model.JdbcObject; /** * * @description JDBC工具类 * @author wangxuegang * @since JDK 1.6 */ public final class JDBCUtils { private static final String DRIVER; //驱动 private static final String URL; //连接数据库地址 private static final String USER; //用户名 private static final String PASSWORD; //密码 private JDBCUtils(){} static { ResourceBundle bundle = ResourceBundle.getBundle("jdbc"); DRIVER = bundle.getString("driver"); URL = bundle.getString("url"); USER = bundle.getString("user"); PASSWORD = bundle.getString("password"); /** * 驱动注册 */ try { Class.forName(DRIVER); } catch (ClassNotFoundException e) { throw new ExceptionInInitializerError(e); } } /** * 获取 Connetion */ public static Connection getConnection() throws SQLException{ return DriverManager.getConnection(URL, USER, PASSWORD); } /** * 释放资源 */ public static void colseResource(Connection conn,Statement st,ResultSet rs) { closeResultSet(rs); closeStatement(st); closeConnection(conn); } /** * 释放连接 Connection */ public static void closeConnection(Connection conn) { if(conn !=null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } //等待垃圾回收 conn = null; } /** * 释放语句执行者 Statement */ public static void closeStatement(Statement st) { if(st !=null) { try { st.close(); } catch (SQLException e) { e.printStackTrace(); } } //等待垃圾回收 st = null; } /** * 释放结果集 ResultSet */ public static void closeResultSet(ResultSet rs) { if(rs !=null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } //等待垃圾回收 rs = null; } /** * * @description 获取连接,传入SQL */ public static JdbcObject execute(JdbcObject object,String sql) throws SQLException{ object.setConnection(JDBCUtils.getConnection()); object.setPreStatement(object.getConnection().prepareStatement(sql)); return object; } /** * * @description 关闭资源 */ public static void closeJdbcObject(JdbcObject object){ JDBCUtils.colseResource(object.getConnection(),object.getPreStatement(),object.getResultSet()); } }
3.数据库配置jdbc.properties
driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/test user=root password=root
上一篇: 前端学习笔记75-表单简介
下一篇: Indri使用会遇到的坑和BUG
推荐阅读
-
volatile关键字实例分析 博客分类: java并发编程 volatile并发线程javasynchronized
-
Java POI Excel sheet合并 博客分类: 编程相关Java相关 exceljavapoisheet合并
-
Java数组删除指定元素 博客分类: Java相关编程相关数据结构算法 java数组删除指定元素
-
linux 干掉所有java进程 博客分类: 编程相关Java相关 javalinux杀进程
-
视频操作类 博客分类: Java相关 javaffmpegmplayermencoder
-
pdf转swf 实现类似百度文库功能 博客分类: java 百度文库pdfswfjava
-
Java 合并Word文档 博客分类: Java Word JavaSpire.Doc for JavaWord合并免费Word控件
-
解决get请求传中文乱码问题 博客分类: java
-
FtpUtil工具类 博客分类: java
-
封装jdbc 博客分类: java