自己封装了一个操作数据库的工具类以及通过资源文件获取数据库连接的类
来源:互联网 发布:excel矩阵相乘value 编辑:程序博客网 时间:2024/06/06 00:26
面向对象面向君,不负代码不负卿。 *^o^*
欢迎大家指点
JDBCTools类(数据库操作工具类):
import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;/** * 数据库操作工具类 * * @author guixain * */public class JDBCTools { /** * 执行删除操作 用法范例:String sql = "delete from user where id = ?" ; boolean flag =JDBCTools.update(sql, 1) ; * * @param sql sql语句 * @param o 删除的标志列 */ public static Boolean delete(String sql, Object o) { Boolean flag = false; Connection conn = null; PreparedStatement ps = null; try { conn = DatabaseConnection.getConnection(); ps = conn.prepareStatement(sql); ps.setObject(1, o); if (ps.executeUpdate() > 0) { flag = true; } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } JDBCTools.close(null, ps, conn); return flag; } /** * 修改操作 用法范例:String sql = "update user set username=?,password = ? ,balance = ? * where username = ?"; boolean flag = JDBCTools.update(sql, "奥拉fu", "233423",567, "Jerry"); * * @param sql sql语句 * @param args 修改的记录的列的参数 */ public static boolean update(String sql, Object... args) { Boolean flag = false; PreparedStatement ps = null; Connection conn = null; try { conn = DatabaseConnection.getConnection(); ps = conn.prepareStatement(sql); for (int i = 0; i < args.length; i++) { ps.setObject(i + 1, args[i]); } if (ps.executeUpdate() > 0) { flag = true; } } catch (SQLException e) { e.printStackTrace(); } JDBCTools.close(null, ps, conn); return flag; } /** * 执行查找 用法范例: String sql = "select id,username,password,balance from user where * id like ?"; List<List<Object>> list = new ArrayList<>(); List<Object> list2 = null; list = JDBCTools.query(sql, 1); for (int i = 0; i < list.size(); i++) { list2 = list.get(i); for (int j = 0; j < list2.size(); j++) { System.out.println(i+1 + "属性:" + list2.get(j)); } } * * @param sql sql语句 * @return 结果集List里面存储了装了Object对象的List */ public static List<List<Object>> query(String sql, Object... args) { PreparedStatement ps = null; ResultSet rs = null; Connection conn = null; List<List<Object>> list = new ArrayList<>(); List<Object> list2 = null; try { conn = DatabaseConnection.getConnection(); ps = conn.prepareStatement(sql); for (int i = 0; i < args.length; i++) { if (sql.indexOf("like") != -1) { ps.setObject(i + 1, "%" + args[i] + "%"); } else { ps.setObject(i + 1, args[i]); } } rs = ps.executeQuery(); int m = rs.getMetaData().getColumnCount(); while (rs.next()) { list2 = new ArrayList<>(); for (int k = 0; k < m; k++) { list2.add(rs.getString(k + 1)); } list.add(list2); } } catch (SQLException e) { e.printStackTrace(); } JDBCTools.close(rs, ps, conn); return list; } /** * 关闭相关操作 * * @param rs ResultSet 对象 * @param ps PreparedStatement 对象 * @param conn Connection 对象 */ public static void close(ResultSet rs, PreparedStatement ps, Connection conn) { if (rs != null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } if (ps != null) { try { ps.close(); } catch (SQLException e) { e.printStackTrace(); } } if (conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } }}
DatabaseConnection(获取数据库连接类):
import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.Properties;/** * 通过读取资源文件连接数据库的类 * @author guixain * */public class DatabaseConnection { private static String driver ; private static String url ; public static String user ; public static String pass ; static { InputStream in = DatabaseConnection.class.getClassLoader() .getResourceAsStream("JDBC.properties") ; Properties properties = new Properties() ; try { properties.load(in); driver = properties.getProperty("driver") ; url = properties.getProperty("url") ; user= properties.getProperty("user") ; pass = properties.getProperty("pass") ; Class.forName(driver) ; } catch (Exception e) { e.printStackTrace(); } } /** * 获取数据库连接 * @return Connection */ public static Connection getConnection() { Connection conn = null ; try { conn = DriverManager.getConnection(url, user, pass) ; } catch (SQLException e) { e.printStackTrace(); } return conn; }}
JDBC.properties(资源文件):
driver = com.mysql.jdbc.Driverurl = jdbc:mysql:///hgx?characterEncoding=utf-8user = rootpass = 123456
大牛,别默默看了。快登陆帮我评论吧! *^o^* 阅读全文
0 0
- 自己封装了一个操作数据库的工具类以及通过资源文件获取数据库连接的类
- 自己封装了一个socket下载文件的类
- 自己封装的一个工具类
- 自己封装的一个工具类
- 封装一个自己的php操作类
- VB、ASP 数据库操作工具类:DataTool,封装了常用的数据库操作
- 【Java数据库连接类】封装数据库操作的连接类DBConnection
- sqlHelper封装类,用于对数据库的操作,此类将查询操作中返回的结果集传递给了一个数组,直接将资源关闭
- 自己写了一个简单的mysql数据库连接类
- 一个简单的获取数据库连接的工具类
- 自己封装的验证码工具类以及登录验证
- 一个简单的数据库操作类、封装了一些简单的操作
- 自己封装了一个取得电脑信息及关机相关操作的类
- asp.net 自己封装数据库操作一个类中一个自定义方法Execute(),非常实用,省去了麻烦的中间过程,动态参数
- 自己封装的poi操作Excel工具类
- 笔记:通过Spring工具类获取classpath下的文件资源
- 通过Spring工具类获取classpath下的文件资源--笔记
- SqlHelper工具类封装了对数据库的增删改查操作
- Linux系统修改默认pip3版本,使其关联Python3.6
- 用Python做有趣的事儿——模拟登陆学校教务系统
- 0828-JSP基础知识
- js面向对象的封装
- 关于iOS 可消失的提示框(黑色)
- 自己封装了一个操作数据库的工具类以及通过资源文件获取数据库连接的类
- http状态消息含义
- SQL Server中一些日期和时间函数
- Java学习笔记-&&与&、||与|的区别
- 1061. Dating (20)
- CopyPNGFile 异常错误
- Linux运维学习之路(4)Linux文件管理
- 前言的闲话以及第一章的入门(四).2
- kolakoski序列