jdbc封装实例

42 篇文章 0 订阅
37 篇文章 0 订阅

      在这里我首先以一个比较简单的小例子让不知道模板模式的人先有个入门的概念。(如果要想深入了解,去看<java与模式>) 在后面的例子我将以一个比较实用的例子来说明这种模式给我们带来的好处,并且这个例子很实用。下面我会把所有的代码都贴出来,你可以直接Copy代码就可以运行,如果你已经有啦一定了解,那么就直接看第二个吧。  

      在这里我希望你把它看完,并把它理解。因为开始我在看Spring的源码的时候也是看啦好多次才把思路理清楚的。  

  

      首先先说说这两个例子的作用,要不然看啦大半天都不知道是什么东西。  

  

实例1:

      当我们去买东西的时候,东西都会打折,然而每种东西的折扣都不一样。如买Book的时候,书的折扣是 0.8 折而当我们去买Video 的时候,它是 0.7 折,如果这些分类的商品很多的时候。而我们每次都要 在每一个类中写一个打折后得到的实际价格的话,那是不是感觉到很累赘。也很不爽。所以我们有必要把它抽象出来。那么每个类只要从这个类继承就可以啦。如果重用的方法多的话,那么这就会带来很大的好处。 

      看源代码: 

  

      下面这是测试方法:

    结果:  

  

           BookRealPrice: 61.6  

           VideoRealPrice: 240.0  

实例2:

     如果不是用Orm工具而是用经常用jdbc操作数据库的人会感到每次要连接到数据库,CRUD 数据的时候写一大串的

        try{}catch{},几乎每次都写,真是他妈的烦死啦。大家肯定有同感吧,反正我开始还不会用ORM工具的时候就觉得很麻烦的而当你看啦下面这个例子后就就会觉得方便多啦.也不用写那么多的try catch{}啦,值得高兴的是Spring中对这做啦很好的封装,所以我就横批写啦一个,这样就不与Spring偶合在一起啦,可以单独的拿出来使用。 

  

这时是数据库的表:  

DROP DATABASE IF EXISTS `hibernate`;  

 

CREATE DATABASE `hibernate` ;  

USE `hibernate`;  

CREATE TABLE `person` (  

   `id` int(32) NOT NULL DEFAULT '0',  

   `name` varchar(20) NOT NULL,  

   `password` varchar(20) NOT NULL,  

   PRIMARY KEY (`id`)  

) ENGINE=InnoDB DEFAULT CHARSET=gb2312;  

1.首先我们先做一个接口,现在先不管它,等下你就知道他有什么用啦!

2.而这里是最关键的,就是建一个Jdbc的模板方法,把那些经常要做的try{} catch{}都写在一个类里免得以后每次都还去写。这就成啦代码复用。

下面是我们的测试方法:

测试结果:  

Count: 1  

dongguoh  

123456  

  

    如果你要用 PreparedStatement 的话,想传参数的话,再写一个接口来实现,再在JdbcTemplate重载一个方法如:public Object execute(IPreparedStatementCallback action,,Object[] objArray)再多传一个你要传递的参数数组。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值