dbutils的使用Demo
首先了解一下
Queryrunner.query —————只可以执行select语句。
Queryrunner.update —————只可以接收update,delte,insert语句
BeanHandler ——————返回一个 Bean,结果封装到Bean。只查询第一行。适合根据id查询唯一的一行
BeanListHandler ——————返回List<Bean>所有行,都封装到List,适合于查询多个结果
MapHandler ——————与BeanHandler应,只返回第一行,封装成Map类型 - 也适合于查询一个结果集的 适合于关联查询,且没有匹配的Bean。
MapListHandler ——————与BeanListHandler对应,返回所有,封装成List<Map>类型
ScalarHandler ——————标量- 用于select count(1)|sum|avg|max …一些聚合函数
Demo(MyDataSource.getDataSource() —— 获取 DataSource)
插入数据
@org.junit.Test
public void Query1() throws Exception
{
QueryRunner runner=new QueryRunner(MyDataSource.getDataSource());
System.out.println(MyDataSource.getDataSource());
//String sql="INSERT INTO users VALUES ('U002','tom','4321' )";
//runner.update(sql);
String sql="INSERT INTO users VALUES (?,?,? )";
runner.update(sql,"U003","Jim","123456");
}
插入数据
更新数据
@org.junit.Test
public void Query2() throws Exception
{
QueryRunner runner =new QueryRunner(MyDataSource.getDataSource());
//String sql=" UPDATE users SET NAME='Kim' WHERE NAME='jim' ";
//runner.update(sql);
String sql=" UPDATE users SET NAME=? WHERE NAME=? ";
runner.update(sql,"lily","Kim");
}
更新数据
删除数据
@org.junit.Test
public void Query3() throws Exception
{
QueryRunner runner=new QueryRunner(MyDataSource.getDataSource());
//String sql="DELETE FROM users WHERE NAME='lily' ";
//runner.update(sql);
String sql="DELETE FROM users WHERE NAME=? ";
runner.update(sql,"tom");
}
删除数据
查找数据
@org.junit.Test
public void Query4() throws Exception
{
QueryRunner runner=new QueryRunner(MyDataSource.getDataSource());
//String sql="SELECT * FROM users where id ='U002' ";
//user u= runner.query(sql, new BeanHandler<user>(user.class)); String sql="SELECT * FROM users where id =? ";
user u=runner.query(sql, new BeanHandler<user>(user.class),"U002");
System.out.println(u);
}
查找数据——BeanHandler
@org.junit.Test
public void Query5() throws Exception
{
QueryRunner runner=new QueryRunner(MyDataSource.getDataSource());
String sql="select * from users ";
List<user> list= runner.query(sql, new BeanListHandler<user>(user.class));
for(user u:list)
{
System.out.println(u);
}
}
查找数据——BeanListHandler
@org.junit.Test
public void Query6() throws Exception
{
QueryRunner runner =new QueryRunner(MyDataSource.getDataSource());
String sql="select Id,name,Pwd from users ";
Map<String, Object> map= runner.query(sql, new MapHandler());
System.out.println(map.toString());
}
查找数据——MapHandler
@org.junit.Test
public void Query7() throws Exception
{
QueryRunner runner =new QueryRunner(MyDataSource.getDataSource());
String sql="Select * from users ";
List<Map<String , Object>> list= runner.query(sql, new MapListHandler());
System.out.println(list);
}
查找数据——MapListHandler
@org.junit.Test
public void Query8() throws Exception
{
QueryRunner runner =new QueryRunner(MyDataSource.getDataSource());
String sql="select count(*) from Users ";
Object obj=runner.query(sql, new ScalarHandler());
int i=Integer.valueOf(obj.toString());
System.out.println(i);
}
查找数据——ScalarHandler
导入包包括

dbutils的使用Demo的更多相关文章
- apache DBUtils 使用例子demo
转自:http://blog.csdn.net/earbao/article/details/44901061 apache DBUtils是java编程中的数据库操作实用工具,小巧简单实用, 1.对 ...
- Java 使用 Dbutils 工具类库 操作mysql
Dbutils 官网http://commons.apache.org/proper/commons-dbutils/ 结合我个人写的JDBCUtils 写的 Dbutils 的使用demo . JD ...
- DBUtils工具类学习一
Commons DbUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用它能够简化JDBC应用程序的开发,同时也不会影响程序的性能 1.特征 DBUtils是java编程中 ...
- Java 使用 DBCP mysql 连接池 做数据库操作
需要的jar包有 commons-dbutils , commons-dbcp , commons-pool , mysql-connector-java 本地database.propertties ...
- mvc模式jsp+servel+dbutils oracle基本增删改查demo
mvc模式jsp+servel+dbutils oracle基本增删改查demo 下载地址
- JDBC总结(含DbUtils组件)
jdbc1. jdbc:使用java代码(程序)发送sql语句的技术2. jdbc的核心接口(查看API): java.sql Driver,DriverManger,Statement,Result ...
- Apache Common DbUtils
前段时间使用了Apache Common DbUtils这个工具,在此留个印,以备不时查看.大家都知道现在市面上的数据库访问层的框架很多,当然很多都是包含了OR-Mapping工作步骤的 例如大家常用 ...
- android Xutils dbutils 注解
xUtils DbUtils 关于实体类注解 汇总 RockyZhang 发布于 1年前,共有 0 条评论 先来官方demo DbUtils db = DbUtils.create(this); ...
- Apache DbUtils - JDBC轻量级封装的工具包
前段时间使用了Apache Common DbUtils这个工具,在此留个印,以备不时查看.大家都知道现在市面上的数据库访问层的框架很多,当然很多都是包含了OR-Mapping工作步骤的例如大家常用的 ...
随机推荐
- box flex 弹性盒模型(转载)
css3引入了新的盒模型——弹性盒模型,该模型决定一个盒子在其他盒子中的分布方式以及如何处理可用的空间.这与XUL(火狐使用的用户交互语言)相似,其它语言也使用相同的盒模型,如XAML .GladeX ...
- Memcached使用手册
memcached简介 1.memcached是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果 ...
- Python交互模式下方向键出现乱码
解决办法如下: 1.安装readline模块 readline库是bash shell用的库,包含许多功能,如命令行自动补全等. ubuntu下安装的命令: sudo apt-get instal ...
- Python 改变当前工作目录
在shell里编辑: import os os.getcwd() #取得当前工作目录 os.chdir(r'目标目录') # os.chdir(r'd:\learnpy')
- 视图必须派生自 WebViewPage 或 WebViewPage错误解决方法
1,在每个视图上面添加 @inherits System.Web.Mvc.WebViewPage 2,将views中的web.config COPY到新的视图模版文件夹下,就可以了
- 转:perror和strerror的区别
概述: perror和strerror都是C语言提供的库函数,用于获取与erno相关的错误信息,区别不大,用法也简单.最大的区别在于perror向stderr输出结果,而 strerror向stdou ...
- 51单片机模拟I2C总线的C语言实现
电路原理图 EEPROM为ATMEL公司的AT24C01A.单片机为ATMEL公司的AT89C51. 软件说明 C语言为Franklin C V3.2.将源程序另存为testi2c.c,用命令 C ...
- ExpandableListView(可展开的列表组件)的说明以及其用法
ExpandableListView的用法和ListView非常像,只是其所显示的列表项应该由ExpandableListAdapter提供,下面是它的xml属性及说明: 然而,接下来是用事实说话了: ...
- 8.2.1.15 ORDER BY Optimization ORDER BY 优化
8.2.1.15 ORDER BY Optimization ORDER BY 优化 在一些情况下, MySQL 可以使用一个索引来满足一个ORDER BY 子句不需要做额外的排序 index 可以用 ...
- 解决rsyslog 断电或者被kill 重发问题
$InputFilePersistStateInterval 1 Specifies how often the state file shall be written when processing ...