首先了解一下

    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的更多相关文章

  1. apache DBUtils 使用例子demo

    转自:http://blog.csdn.net/earbao/article/details/44901061 apache DBUtils是java编程中的数据库操作实用工具,小巧简单实用, 1.对 ...

  2. Java 使用 Dbutils 工具类库 操作mysql

    Dbutils 官网http://commons.apache.org/proper/commons-dbutils/ 结合我个人写的JDBCUtils 写的 Dbutils 的使用demo . JD ...

  3. DBUtils工具类学习一

    Commons DbUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用它能够简化JDBC应用程序的开发,同时也不会影响程序的性能 1.特征 DBUtils是java编程中 ...

  4. Java 使用 DBCP mysql 连接池 做数据库操作

    需要的jar包有 commons-dbutils , commons-dbcp , commons-pool , mysql-connector-java 本地database.propertties ...

  5. mvc模式jsp+servel+dbutils oracle基本增删改查demo

    mvc模式jsp+servel+dbutils oracle基本增删改查demo 下载地址

  6. JDBC总结(含DbUtils组件)

    jdbc1. jdbc:使用java代码(程序)发送sql语句的技术2. jdbc的核心接口(查看API): java.sql Driver,DriverManger,Statement,Result ...

  7. Apache Common DbUtils

    前段时间使用了Apache Common DbUtils这个工具,在此留个印,以备不时查看.大家都知道现在市面上的数据库访问层的框架很多,当然很多都是包含了OR-Mapping工作步骤的 例如大家常用 ...

  8. android Xutils dbutils 注解

    xUtils DbUtils 关于实体类注解 汇总 RockyZhang 发布于 1年前,共有 0 条评论 先来官方demo DbUtils db = DbUtils.create(this);    ...

  9. Apache DbUtils - JDBC轻量级封装的工具包

    前段时间使用了Apache Common DbUtils这个工具,在此留个印,以备不时查看.大家都知道现在市面上的数据库访问层的框架很多,当然很多都是包含了OR-Mapping工作步骤的例如大家常用的 ...

随机推荐

  1. JavaScript中的內定物件與函式: arguments, callee, caller, this, apply(), call()

    arguments, caller, callee, this都是用在函式(function)內的特殊內定物件.而apply()及call()則是用來呼叫函式的不同作法. arguments可用來取得 ...

  2. for-in语句

    <script type="text/javascript"> /* for-in语句: for-in语句的格式: for(var 变量名 in 遍历的目标){ } f ...

  3. C++学习笔记1——const

    Const 限定符 1. 等价 //const对象必须初始化//C++中const修饰的变量不能改变//C中const修饰的变量可以通过指针修改 2. ; const int j = i;//变量给常 ...

  4. MFC自创建类了解

    CxxxxView 视窗类 所有的按键 等消息都先在这里响应 CxxxxDoc 文档类 CMainFrame 框架类 CxxxxApp 应用程序类 CxxxxView类中的 OnDraw函数 在窗口改 ...

  5. spark 监控--WebUi、Metrics System

    Spark 监控相关的部分有WebUi 及 Metrics System; WebUi用于展示Spark 资源状态.Metrics System 整合的指标信息. Ui相关流程 Spark集群启动之后 ...

  6. MongoDB insert/update/one2many案例

    以博文与评论为例,博文有标题内容,对应多个评论,评论有评论人.评论内容等. ()插入一条博文: db.blog.insert( {','title':'this is blog title1','co ...

  7. Building Web Apps with SignalR, Part 1

    Building Web Apps with SignalR, Part 1 In the first installment of app-building with SignalR, learn ...

  8. Kill Process by Name

    Kill Process by Name(works in: Microsoft Windows 95/98/ME/NT/2000/XP)It is sometimes necessary to te ...

  9. android之针对fragment多次调用onCreateView的问题

    private View rootView; @Override public View onCreateView(LayoutInflater inflater, ViewGroup contain ...

  10. 硝烟中的Scrum和XP-我们如何实施Scrum 4 (Part 1/2)

    4 制定Sprint计划 计划是Scrum中重要的一环; 是为了让团队获得足够信息, 不受打扰地工作, 增加团队的信心; Planning的成果: 1) Sprint目标 2) 团队成员名单(时间百分 ...