DBUtils version2.0 附带jdbc.properties配置文件
支持操作:
1.加载驱动
2.获取数据库连接对象
3.关闭资源
4.封装通用的更新操作:INSERT UPDATE DELETE
5.封装通用查询单条数据的方法
(JDBC,反射,集合框架,lambda表达式,新增Objects类)
6.封装通用查询多条数据的方法
7.将Map集合转换为一个确定的类型
8.执行相关查询并将结果返回为List<Map<String,Object>>集合
9.根据提供的查询语句以及查询参数,返回符合条件的数目
Resul
/*
* Copyright (c) 2020. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
* Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan.
* Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna.
* Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus.
* Vestibulum commodo. Ut rhoncus gravida arcu.
*/
package com.softeem.lesson51.utils;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Field;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Properties;
/**
* ORM框架(Mybatis,Hibernate,spring Data JPA)
* 数据库工具类V2.0 将访问数据库的公共代码抽取: 1.加载驱动 2.获取连接 6.关闭资源
* @author 洲小徐
*
*/
public class DBUtils {
/** 驱动类路径 */
private static String DRIVER_CLASS;
/** url地址 */
private static String URL;
/** 数据库服务器登录用户名 */
private static String USER;
/** 数据库服务器登录密码 */
private static String PASSWORD;
static {
try {
//读取属性文件获取连接数据库相关的字符串
InputStream is = DBUtils.class.getResourceAsStream("/jdbc.properties");
//创建属性对象
Properties p = new Properties();
//加载包含属性信息的输入流
p.load(is);
//根据属性名获取属性值
DRIVER_CLASS = p.getProperty("driver");
URL = p.getProperty("url");
USER = p.getProperty("user");
PASSWORD = p.getProperty("password");
// 1.加载驱动
Class.forName(DRIVER_CLASS);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 2. 获取数据库连接对象
*
* @return
*/
public static synchronized Connection getConn() {
try