MySql && MySQL数据库 DbUtils工具类(五)

DbUtils工具类

是Apache Commons 项目组提供的一个高效的JDBC代码开发工具包。

官网: http://commons.apache.org/proper/commons-dbutils/
在这里插入图片描述
核心类: QueryRunner

public static boolean save(Cart cart){
        //1. 核心对象 QueryRunner 是进行数据库操作的核心对象。
        // 它的带参数的 DataSource 构造方法,决定了将来它的所有操作,会自动从连接池中获取连接,且用完之后自动放回。 不需要我们操心。
        QueryRunner queryRunner = new QueryRunner(DataSourceUtils.getDataSource());


        int result = -1;

        //借助这个对象可以方便高效的进行 CRUD 操作。
        //今天用的全是方法中不带 Connection 参数的方法。
        //1. insert操作 -> update方法
        //sql 就是你要传递的insert 语句,参数用问号代替
        try {
            result =  queryRunner.update("insert into s_cart (name,price,total) values(?,?,?)",cart.getName(),cart.getPrice(),cart.getTotal());
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return result!=-1;
    }


    /**
      演示查询
     */
    public static Cart getById(int id){
        QueryRunner queryRunner = new QueryRunner(DataSourceUtils.getDataSource());
        //所有的select操作,使用query方法来进行
        //第二个参数 ResultSetHandler 是关键。
        //DbUtils工具类提供了 ResultSetHandler 接口的不同实现来应对不同的场景。
        // BeanHandler 用于将结果中的一行数据,映射到一个Java对象上。
        Cart cart = null;
        try {
            //注意: 这里的Cart 是通过反射来创建的。 意味着,我们必须保证它存在公共无参的构造方法。
            cart = queryRunner.query("select * from s_cart where id=?", new BeanHandler<Cart>(Cart.class), id);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return cart;
    }

    public static boolean update(Cart cart) {
        //1. 核心对象 QueryRunner 是进行数据库操作的核心对象。
        // 它的带参数的 DataSource 构造方法,决定了将来它的所有操作,会自动从连接池中获取连接,且用完之后自动放回。 不需要我们操心。
        QueryRunner queryRunner = new QueryRunner(DataSourceUtils.getDataSource());


        int result = -1;

        //借助这个对象可以方便高效的进行 CRUD 操作。
        //今天用的全是方法中不带 Connection 参数的方法。
        //1. update操作 -> update方法
        //sql 就是你要传递的update 语句,参数用问号代替
        try {
            result =  queryRunner.update("update s_cart set name=?,price=?,total=? where id=?",cart.getName(),cart.getPrice(),cart.getTotal(),cart.getId());
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return result!=-1;
    }


    public static boolean deleteById(int id) {
        //1. 核心对象 QueryRunner 是进行数据库操作的核心对象。
        // 它的带参数的 DataSource 构造方法,决定了将来它的所有操作,会自动从连接池中获取连接,且用完之后自动放回。 不需要我们操心。
        QueryRunner queryRunner = new QueryRunner(DataSourceUtils.getDataSource());


        int result = -1;

        //借助这个对象可以方便高效的进行 CRUD 操作。
        //今天用的全是方法中不带 Connection 参数的方法。
        //1. delete操作 -> update方法
        //sql 就是你要传递的delete语句,参数用问号代替
        try {
            result =  queryRunner.update("delete from  s_cart where id=?",id);
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return result!=-1;
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值