commons-dbutils 这是 Apache 提供了一个开源组织 JDBC工具库,它是JDBC简包,学习成本低,和使用dbutils可以大大简化jdbc的工作量,同一时候也不会影响程序的性能。因此dbutils成为非常多不喜欢hibernate的公司的首选。

  1. /**
  2. * DbUtils的使用方法:利用DbUtils实现增删改查操作
  3. * @project_name Day12
  4. * @class_name DbUtilsDemo1
  5. * @author Dovinya
  6. * @data 2014-8-27 下午11:07:09
  7. * @version 1
  8. * @notes
  9. */
  10. /*
  11. create database day12;
  12. use day12;
  13. create table table1 (
  14. id int primary key auto_increment,
  15. name varchar(20),
  16. salary double
  17. );
  18.  
  19. insert into table1 values(null,'zhang',234.5);
  20. insert into table1 values(null,'li',234.5);
  21. insert into table1 values(null,'wang',3242);
  22. insert into table1 values(null,'zhao',32543);
  23. insert into table1 values(null,'pan',4654);
  24. insert into table1 values(null,'he',4235);
  25.  
  26. *
  27. */
  28. public class DbUtilsDemo1 {
  29. /*
  30. * 利用DbUtils实现更改操作
  31. */
  32. public void update() throws SQLException {
  33.  
  34. //获取数据源对象
  35. QueryRunner runner = new QueryRunner(new ComboPooledDataSource());
  36. runner.update("update table1 set salary =100");
  37. }
  38.  
  39. @Test
  40. public void add() throws SQLException{
  41. //获取数据源对象
  42. QueryRunner runner = new QueryRunner(new ComboPooledDataSource());
  43. runner.update("insert into table1 values(1,?
  44.  
  45. ,?)","lisi",1000);
  46. }
  47. @Test
  48. public void delete() throws SQLException{
  49. //获取数据源对象
  50. QueryRunner runner = new QueryRunner(new ComboPooledDataSource());
  51. runner.update("delete from table1 where name = 'lisi'");
  52. }
  53.  
  54. @Test
  55. public void query() throws SQLException{
  56. //获取数据源对象
  57. QueryRunner runner = new QueryRunner(new ComboPooledDataSource());
  58. List<User> list = runner.query("select *from table1 where id<?
  59.  
  60. ", new ResultSetHandler<List<User>>(){
  61.  
  62. @Override
  63. public List<User> handle(ResultSet rs) throws SQLException {
  64.  
  65. List<User> list = new ArrayList<User>();
  66. while(rs.next()){
  67. User user = new User();
  68. user.setId(rs.getInt("id"));
  69. user.setName(rs.getString("name"));
  70. user.setSalary(rs.getDouble("salary"));
  71.  
  72. list.add(user);
  73. }
  74.  
  75. return list;
  76. }
  77.  
  78. }, 5);
  79.  
  80. System.out.println(list); //这里能够加断点调试观察
  81. }
  82.  
  83. }

版权声明:本文博客原创文章,博客,未经同意,不得转载。

使用DbUtils实现CRUD的更多相关文章

  1. DBUtils模版CRUD

    准备:导包 1.创建c3p0-config.xml配置文件放在src下 <?xml version="1.0" encoding="UTF-8"?> ...

  2. 高性能jdbc封装工具 Apache Commons DbUtils 1.6(转载)

    转载自原文地址:http://gao-xianglong.iteye.com/blog/2166444 前言 关于Apache的DbUtils中间件或许了解的人并不多,大部分开发人员在生成环境中更多的 ...

  3. 写一个ORM框架的第一步(Apache Commons DbUtils)

    新一次的内部提升开始了,如果您想写一个框架从Apache Commons DbUtils开始学习是一种不错的选择,我们先学习应用这个小“框架”再把源代码理解,然后写一个属于自己的ORM框架不是梦. 一 ...

  4. 《笔者带你剖析Apache Commons DbUtils 1.6》(转)

    前言 关于Apache的DbUtils中间件或许了解的人并不多,大部分开发人员在生成环境中更 多的是依靠Hibernate.Ibatis.Spring JDBC.JPA等大厂提供的持久层技术解决方案, ...

  5. 十四 数据库连接池&DBUtils

    关于数据库连接池: 1 数据库的连接对象创建工作,比较消耗性能. 2 一开始在内存中开辟一块空间,往池子里放置多个连接对象,需要连接的时候从连接池里面调用, 使用完毕归还连接,确保连接对象能够循环利用 ...

  6. 写一个ORM框架的第一步

    新一次的内部提升开始了,如果您想写一个框架从Apache Commons DbUtils开始学习是一种不错的选择,我们先学习应用这个小“框架”再把源代码理解,然后写一个属于自己的ORM框架不是梦. 一 ...

  7. DBUtils 笔记

    一.DBUtils介绍  apache 什么是dbutils,它的作用 DBUtils是java编程中的数据库操作实用工具,小巧简单实用. DBUtils封装了对JDBC的操作,简化了JDBC操作.可 ...

  8. javaweb学习总结—Apache的DBUtils框架学习

    注明: 本文转载自http://www.cnblogs.com/xdp-gacl/p/4007225.html 一.commons-dbutils简介 commons-dbutils 是 Apache ...

  9. JavaWeb学习总结(十四)--Apache的DBUtils

    一.commons-dbutils简介 commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化 ...

随机推荐

  1. 从零開始学android&lt;Menu菜单组件.三十.&gt;

    在Android系统之中.菜单一共同拥有三类:选项菜单(OptionsMenu).上下文菜单(ContextMenu)和子菜单(SubMenu). 今天我们就用几个样例来分别介绍下菜单的使用 acti ...

  2. JavaScript引用类型之Object类

    ECMAScript中的Object类跟Java中的Object类相似,ECMAScript中的全部类都由这个类继承而来,Object类中的全部属性和方法都会出如今其他类中,所以理解Object类,就 ...

  3. 算法起步之Dijkstra算法

    原文:算法起步之Dijkstra算法 友情提示:转载请注明出处[作者 idlear    博客:http://blog.csdn.net/idlear/article/details/19687579 ...

  4. SCU 2009(数位dp)

    传送门:Zeros and Ones 题意:求总数位为n包含0和1个数相同且整除k的二进制数的个数. 分析:设dp[pos][num][md]表示还有pos位已包含num个1且模k余md的符合条件的二 ...

  5. ImportError: No module named _sqlite3 - 代码分享

    ImportError: No module named _sqlite3 - 代码分享 ImportError: No module named _sqlite3 作者:86市场网       点击 ...

  6. 获取webshell的十种方法

    黑客在入侵企业网站时,通常要通过各种方式获取webshell从而获得企业网站的控制权,然后方便进行之后的入侵行为.本篇文章将如何获取webshell总结成为了十种方法,希望广大的企业网络管理员能够通过 ...

  7. zabbix监控nginx连接状态(转)

    zabbix监控nginx zabbix可以监控nginx的状态,关于一个服务的状态可以查看服务本身的状态(版本号.是否开启),还应该关注服务能力(例如以nginx的负载效果:连接数.请求数和句柄数) ...

  8. 在IIS上发布一个WebService,再发布一个网站调用这个WebService(实例)

    首先描述一下先决条件:IIS可用,VS2005可用. 好,现在开始: 首先写一个WebService并把它发布到IIS上: 在IIS上的默认网站下新建一个“虚拟目录”,取名为“webservice1” ...

  9. poj3237(树链剖分)

    题目链接:http://poj.org/problem?id=3237 题目大意:指定一颗树上有3个操作: 1)询问操作,询问a点和b点之间的路径上最长的那条边的长度(即最大值): 2)取反操作,将a ...

  10. poj1804(归并排序求逆序数)

    逆序数.也就是说,对于n个不同的元素,先规定各元素之间有一个标准次序(比如n个 不同的自然数,可规定从小到大为标准次序),于是在这n个元素的任一排列中,当某两个元素的先后次序与标准次序不同一时候,就说 ...