常用代码备忘录(封装 Apache Commons 的 DbUtils 实现的数据库操作工具类)-DBUtil.java

public class DBUtil {
    private static final QueryRunner runner = new QueryRunner();

    // 打开数据库连接(type: MySQL,Oracle,SQLServer)
    public static Connection openConn(String type, String host, String port, String name, String username, String password) {
        Connection conn = null;
        try {
            String driver;
            String url;
            if (type.equalsIgnoreCase("MySQL")) {
                driver = "com.mysql.jdbc.Driver";
                url = "jdbc:mysql://" + host + ":" + port + "/" + name;
            } else if (type.equalsIgnoreCase("Oracle")) {
                driver = "oracle.jdbc.driver.OracleDriver";
                url = "jdbc:oracle:thin:@" + host + ":" + port + ":" + name;
            } else if (type.equalsIgnoreCase("SQLServer")) {
                driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
                url = "jdbc:sqlserver://" + host + ":" + port + ";databaseName=" + name;
            } else {
                throw new RuntimeException();
            }
            Class.forName(driver);
            conn = DriverManager.getConnection(url, username, password);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return conn;
    }

    // 关闭数据库连接
    public static void closeConn(Connection conn) {
        try {
            if (conn != null) {
                conn.close();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    // 查询(返回Array结果)
    public static Object[] queryArray(Connection conn, String sql, Object... params) {
        Object[] result = null;
        try {
            result = runner.query(conn, sql, new ArrayHandler(), params);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return result;
    }

    // 查询(返回ArrayList结果)
    public static List<Object[]> queryArrayList(Connection conn, String sql, Object... params) {
        List<Object[]> result = null;
        try {
            result = runner.query(conn, sql, new ArrayListHandler(), params);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return result;
    }

    // 查询(返回Map结果)
    public static Map<String, Object> queryMap(Connection conn, String sql, Object... params) {
        Map<String, Object> result = null;
        try {
            result = runner.query(conn, sql, new MapHandler(), params);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return result;
    }

    // 查询(返回MapList结果)
    public static List<Map<String, Object>> queryMapList(Connection conn, String sql, Object... params) {
        List<Map<String, Object>> result = null;
        try {
            result = runner.query(conn, sql, new MapListHandler(), params);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return result;
    }

    // 查询(返回Bean结果)
    public static <T> T queryBean(Class<T> cls, Map<String, String> map, Connection conn, String sql, Object... params) {
        T result = null;
        try {
            if (MapUtil.isNotEmpty(map)) {
                result = runner.query(conn, sql, new BeanHandler<T>(cls, new BasicRowProcessor(new BeanProcessor(map))), params);
            } else {
                result = runner.query(conn, sql, new BeanHandler<T>(cls), params);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return result;
    }

    // 查询(返回BeanList结果)
    public static <T> List<T> queryBeanList(Class<T> cls, Map<String, String> map, Connection conn, String sql, Object... params) {
        List<T> result = null;
        try {
            if (MapUtil.isNotEmpty(map)) {
                result = runner.query(conn, sql, new BeanListHandler<T>(cls, new BasicRowProcessor(new BeanProcessor(map))), params);
            } else {
                result = runner.query(conn, sql, new BeanListHandler<T>(cls), params);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return result;
    }

    // 查询指定列名的值(单条数据)
    public static <T> T queryColumn(String column, Connection conn, String sql, Object... params) {
        T result = null;
        try {
            result = runner.query(conn, sql, new ScalarHandler<T>(column), params);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return result;
    }

    // 查询指定列名的值(多条数据)
    public static <T> List<T> queryColumnList(String column, Connection conn, String sql, Object... params) {
        List<T> result = null;
        try {
            result = runner.query(conn, sql, new ColumnListHandler<T>(column), params);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return result;
    }

    // 查询指定列名对应的记录映射
    public static <T> Map<T, Map<String, Object>> queryKeyMap(String column, Connection conn, String sql, Object... params) {
        Map<T, Map<String, Object>> result = null;
        try {
            result = runner.query(conn, sql, new KeyedHandler<T>(column), params);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return result;
    }

    // 更新(包括UPDATE、INSERT、DELETE,返回受影响的行数)
    public static int update(Connection conn, String sql, Object... params) {
        int result = 0;
        try {
            result = runner.update(conn, sql, params);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return result;
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Commons-dbutils-1.3.jar 可以在 Apache 的官方网站上下载。您可以访问以下链接: http://commons.apache.org/proper/commons-dbutils/download_dbutils.cgi 请确保您下载的版本为 1.3,并且根据自己的需要选择合适的文件。 下载后,您可以将其添加到您的项目中并使用它。 ### 回答2: 想要下载commons-dbutils-1.3.jar,首先我们需要知道它是什么。commons-dbutilsApache组织提供的一个开源项目,它提供了一个简单易用的工具包,用于简化Java应用程序与数据库之间的交互。该工具包使用了JDBC(Java Database Connectivity)来提供数据库的连接和操作。 要下载commons-dbutils-1.3.jar,我们可以通过以下步骤进行: 1. 打开网络浏览器,进入Apache的官方网站(https://commons.apache.org)。 2. 在官方网站的搜索框中输入commons-dbutils,并点击搜索按钮。 3. 在搜索结果中找到相应的项目(一般是以“Apache Commons DbUtils”为标题),点击进入该项目的页面。 4. 在项目页面中,找到“Downloads”或“Download”选项,点击进入下载页面。 5. 在下载页面中,查找与你正在使用的JVM(Java Virtual Machine)版本和操作系统版本相对应的commons-dbutils-1.3.jar下载链接。 6. 点击下载链接,开始下载commons-dbutils-1.3.jar文件。 7. 下载完成后,将该文件保存到合适的路径下。在开发项目中添加该Jar文件的路径,以便在代码中使用commons-dbutils。 总结:要下载commons-dbutils-1.3.jar,我们需要访问Apache的官方网站,找到相应的下载链接并进行下载。下载完成后,将该文件添加到项目中即可使用commons-dbutils工具包。 ### 回答3: commons-dbutils-1.3.jar是Apache Commons项目中的一个Java库,用于简化数据库操作。如果要下载这个jar文件,可以按照以下步骤进行操作。 1. 打开Apache官方网站,进入Commons项目的页面。 2. 在页面上找到“Downloads”(下载)选项,点击进入下载页面。 3. 在下载页面上,找到“DbUtils”选项,点击进入DbUtils的下载页面。 4. 在DbUtils的下载页面上,找到最新版本的jar文件,通常会以“commons-dbutils-1.3.jar”或类似的形式命名。 5. 选择合适的jar文件下载链接,点击下载开始下载。 6. 下载完成后,将下载的jar文件保存到本地计算机上合适的位置。 下载完成后,就可以将commons-dbutils-1.3.jar添加到项目的classpath中,以便在Java代码中使用它提供的数据库操作功能。可以通过在代码中导入相关的类或使用Maven等构建工具将其引入项目中。这样,就可以使用commons-dbutils库中的API来简化数据库连接、查询、更新等常见操作,提高开发效率和代码可读性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值