DBUtils(DataSourceUtils提供数据源)
DBUtils是apache组织的一个工具类,jdbc的框架,更方便我们使用
使用步骤:
1.导入jar包(commons-dbutils-1.4.jar,c3p0-0.9.1.2.jar)
1.1导入DataSourceUtils类(如何导入并配置)
2.创建一个queryrunner类
queryrunner作用:操作sql语句
构造方法:
new QueryRunner(Datasource ds);//ds为一个数据源 eg:DataSourceUtils.getDataSource()
3.编写sql
4.执行sql
uery(..):执行r操作
update(...):执行cud操作
一.dbutils的CUD
import java.sql.SQLException; import org.apache.commons.dbutils.QueryRunner; import org.junit.Test; import util.DataSourceUtils; /** *dbutils的 CUD *建立在 DataSourceUtils之上 */ public class DBUtilsCUD { //insert @Test public void f1() throws SQLException{ //创建QueryRunner QueryRunner qr = new QueryRunner(DataSourceUtils.getDataSource()); //编写sql String sql = "insert into student values(31,?)"; //执行sql qr.update(sql, "3131"); } //update @Test public void f2() throws SQLException{ //创建QueryRunner QueryRunner qr = new QueryRunner(DataSourceUtils.getDataSource()); //编写sql String sql = "update student set name=? where id=?"; //执行sql qr.update(sql, "xxxxx",31); } //delete @Test public void f3() throws SQLException{ //创建QueryRunner QueryRunner qr = new QueryRunner(DataSourceUtils.getDataSource()); //编写sql String sql = "delete from student where id=?"; //执行sql qr.update(sql,31); } }
二.dbutils的R
主要是几种ResultSetHandler
import java.sql.SQLException; import java.util.List; import java.util.Map; import org.apache.commons.dbutils.QueryRunner; import org.apache.commons.dbutils.handlers.BeanHandler; import org.apache.commons.dbutils.handlers.BeanListHandler; import org.apache.commons.dbutils.handlers.MapListHandler; import org.apache.commons.dbutils.handlers.ScalarHandler; import org.junit.Test; import domain.Student; import util.DataSourceUtils; /* * dbutils的R操作 * 主要是几种ResultSetHandler * */ public class DBUtilsR { /*☆☆☆☆☆ * 将查询结果的第一条记录封装成指定的bean对象,返回 * */ @Test public void beanHandler() throws SQLException{ QueryRunner qr=new QueryRunner(DataSourceUtils.getDataSource()); String sql="select * from student"; Student bean = qr.query(sql,new BeanHandler<>(Student.class)); System.out.println(bean); } /*☆☆☆☆☆ * 将查询结果的每一条记录封装成指定的bean对象,将每一个bean对象放入list中 返回. * */ @Test public void beanListHandler() throws SQLException{ QueryRunner qr=new QueryRunner(DataSourceUtils.getDataSource()); String sql="select * from student"; List<Student> list = qr.query(sql,new BeanListHandler<>(Student.class)); for (Student bean : list) { System.out.println(bean); } } /*☆☆☆ * 将查询结果的每一条记录封装map集合,将每一个map集合放入list中返回 * */ @Test public void mapListHandler() throws SQLException{ QueryRunner qr=new QueryRunner(DataSourceUtils.getDataSource()); String sql="select * from student"; List<Map<String, Object>> list = qr.query(sql,new MapListHandler()); for (Map<String, Object> map : list) { System.out.println(map); } } /*☆☆☆ * 针对于聚合函数 例如:count(*) 返回的是一个Long值 * */ @Test public void ScalarHandler() throws SQLException{ QueryRunner qr=new QueryRunner(DataSourceUtils.getDataSource()); String sql="select count(*) from student"; Object obj = qr.query(sql, new ScalarHandler()); System.out.println(obj); } }
其它几种ResultSetHandler (了解)ArrayHandler, 将查询结果的第一条记录封装成数组,返回 (了解)ArrayListHandler, 将查询结果的每一条记录封装成数组,将每一个数组放入list中返回 (了解)ColumnListHandler, 将查询结果的指定一列放入list中返回 (了解)MapHandler, 将查询结果的第一条记录封装成map,字段名作为key,值为value 返回
DBUtils(DataSourceUtils提供数据源)的更多相关文章
- RDLC报表数据集的一个细节,导致错误为 尚未数据源提供数据源实例
报表中,数据集的名字DataSet_CZ, 这里报表这样加载,视乎是的. reportViewer1.LocalReport.DataSources.Add(new Microsoft.Reporti ...
- c# 数据表DataTable给devexpress的gridControl提供数据源
C# DataTable 详解 参考:https://www.cnblogs.com/Sandon/p/5175829.html http://blog.csdn.net/singgel/articl ...
- Apache提供的dbUtils
一.介绍 apache组织为我们提供了dbUtils实用工具(一些jar包),封装了一些查询的类和借口,相对自己定义的来说,可以简化很多操作 dbUtils提供了核心功能 1.QueryRunner ...
- BenUtils组件和DbUtils组件
BenUtils组件和DbUtils组件 [TOC] 1.BenUtils组件 1.1.简介 程序中对javabean的操作很频繁,所有Apache提供了一套开源api,方便javabean的操作!即 ...
- javaweb学习总结—Apache的DBUtils框架学习
注明: 本文转载自http://www.cnblogs.com/xdp-gacl/p/4007225.html 一.commons-dbutils简介 commons-dbutils 是 Apache ...
- Apache—DBUtils框架
1.所需要jar包 commons-collections-2.1.1.jarmchange-commons-java-0.2.11.jarmysql-connector-java-5.1.18-bi ...
- JavaWeb学习总结(十四)--Apache的DBUtils
一.commons-dbutils简介 commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化 ...
- DBUtils学习
1. DBUtils是JDBC的简单封装,可以和JDBC混合使用. 2. DBUtils对结果集自动封装为JavaBean是有着苛刻要求的:必须满足JavaBean的规范,其次 ...
- Apache—DBUtils框架简介
转载自:http://blog.csdn.net/fengdongkun/article/details/8236216 Apache—DBUtils框架简介.DbUtils类.QueryRunner ...
随机推荐
- Dom关于位置和尺寸的api
parentNode 直接父级//和offsetParent不同 inner2.parentNode <!DOCTYPE html> <html id="html&q ...
- 尚学linux课程---6、linux命令介绍
尚学linux课程---6.linux命令介绍 一.总结 一句话总结: linux中命令的一般格式:命令关键字 选项 参数1 参数2 1.linux基本原则? 一切皆文件 配置文件保存为纯文本格式 2 ...
- 解决方案 -SQL脚本建表产生ORA-00942错误
一.问题简介 1.开发环境 操作系统:win10 数 据 库:Oracle11g 数据库连接工具:Navicat Premium 2.问题简述 在使用SQL Development.Navicat ...
- Python入门教程 超详细1小时学会Python
Python入门教程 超详细1小时学会Python 本文适合有经验的程序员尽快进入Python世界.特别地,如果你掌握Java和Javascript,不用1小时你就可以用Python快速流畅地写有用的 ...
- ubuntu常见错误–Could not get lock /var/lib/dpkg/lock解决
ubuntu常见错误–Could not get lock /var/lib/dpkg/lock解决 通过终端安装程序sudo apt-get install xxx时出错: E: C ...
- Berlin Programming Contest 2004 Heavy Transportation /// dijkstra oj22604
题目大意: 输入t:t为样例数 每个样例输入n,m:n 为顶点个数 m 为路径数 接下来m行 每行输入 u v w :从 u 点到 v 点的路承重为 w 输出 车子若想通过 1~n的最短路 车重需限 ...
- CSS清除默认边距
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquo ...
- C#真他妈神奇,一个函数都不用写就能实现一个简单的邮件发送工具
MailMessage EmaillMessage = new MailMessage( //创建一个对象 new MailAddress(loning.Te ...
- angularJs FileUpload插件上传同一文件无效问题记录
参考:https://blog.csdn.net/qq_34829447/article/details/83780392 问题:使用FileUpload插件进行文件上传时,发现无法上传与上个文件相同 ...
- jquery 表单验证插件
其他: <form action=""> First name: <input type="text" name="FirstNam ...