img

通用数据库访问层dexcoder-dal

selfly selfly 浏览量:141739 创建时间:2015-03-28
如果你不喜欢用Hibernate、Mybaits这类ORM框架,喜欢JdbcTemplate或DbUtils,那么可以试试这个通用的数据库访问层dexcoder-dal,这可能是目前封装的最方便易用的数据访问层了。
  • dexcoder-dal增加表别名支持

    版本:2.1.0-beta1 增加了表别名的支持。 单表操作一般情况下是不需要表别名的,但是也有一些特殊的情况,例如在操作oracle的xmltype类型时。 看下面的代码,xmltype类型字段名为XML_FILE: select XML_FILE.getclobval() xmlFile from TABLE where ID = ? 上面的代码会执
    selfly 发表于1年前 阅读(2758) 评论(0)
  • dexcoder-dal大版本更新,重构及支持更多特性

    版本:v2.0.0-beta1 本次对代码进行了彻底的重构,并调整了项目结构,项目命名为dexcoder-dal。 主要更新: 彻底的代码重写 Criteria方式针对sql的api调整 Criteria中支持sql函数的执行 Criteria原生方式sql执行,{}完全原生,[]进行fieldName到columnName转换的原生 支持执行
    selfly 发表于1年前 阅读(2794) 评论(0)
  • 通用JdbcDao更新,增加动态数据源,支持权重和读写分离

    版本:V1.2.3 本次更新增加了动态数据源的支持,可以十分方便的在配置文件中将原来的单数据源修改成动态数据源,而无须修改任何的业务代码。 下面来看看如何使用动态数据源,关于动态数据源的实现,请看这里:Spring实现动态数据源,支持动态添加、删除和设置权重及读写分离
    selfly 发表于1年前 阅读(6025) 评论(0)
  • 基于spring JdbcTemplate改进版通用dao的使用及实现三:SuperDao类的设计和实现

    前面讲了如何使用,该讲讲如何实现了。 其实技术上并没有什么难度,主要就是一个设计思路。 先来讲解一下superDao,大体上跟前面实现的原理没有什么变化,主要就是添加了根据class对象查询及组合使用。 先来看一下superDao的使用声明: <bean id="superDao" clas
    selfly 发表于1年前 阅读(11198) 评论(5)
  • 基于spring JdbcTemplate改进版通用dao的使用及实现二:使用分页

    在通用dao中,分页功能被封装的十分方便。 并且它可以和前面的各类查询、组合查询结合使用,完全不冲突。 另外,分页的封装是基于JdbcTemplate,也就是说你自己实现的其它各类dao也都可以使用它而非局限于默认提供的SuperDao。 你无须关心数据库类型,它会自动判断为你生成分
    selfly 发表于1年前 阅读(7066) 评论(0)
  • 基于spring JdbcTemplate改进版通用dao的使用及实现

    之前写过一个基于spring JdbcTemplate的通用dao,以及它初步的改进版,有兴趣的可以看一下这个系列,记录了这个通用dao的编写过程。 改进版的通用dao之前已经初步介绍过,经过这段时间的使用以及用它开发了一个简单的站点,里面的很多方法进行了改近和重构,目前已经基本稳定
    selfly 发表于1年前 阅读(5994) 评论(1)
  • Spring JdbcTemplate实现通用的超级dao,比泛型dao更加强大(续)

    前面介绍了一些基本方法的使用,除了不用一个实体类对应的dao外没多大区别,接下来介绍的就是本次改进的重点了。 封装完成之后,用这个通用dao做了个小站,在使用过程中,速度提升不少,但是还有些小细节不够完美,目前感受到的有以下: 1、一个字段等于多个值的or方式查询实
    selfly 发表于1年前 阅读(7753) 评论(3)
  • Spring JdbcTemplate实现通用的超级dao,比泛型dao更加强大

    这两天比较忙,没抽出什么时间,这一停顿居然已经有2个评论了,无疑增添了我的不少动力。 在开始之前,先说下前面实现的通用泛型dao,在第四篇 通用自定义转换到JavaBean的RowMapper实现中,把获取属性的操作也放到了mapRow的方法中,这会导致在每一行数据转换的时候都会获取
    selfly 发表于1年前 阅读(27908) 评论(3)
  • 通用JdbcDao更新,增加数据分表水平拆分支持

    本次更新对JdbcDao的一些内部实现进行了重构,最大的改变是在调用NameHandler的getTableName方法时会传入所有拥有值的属性,以方便实现表的水平拆分。 数据水平拆分的分表,很难做到通用,因为它往往是跟业务紧密结合的。 以书籍和章节为例,书籍可以简单的根据主键id(这里主
    selfly 发表于1年前 阅读(1700) 评论(0)
  • 通用JdbcDao更新,增加括号支持

    本次更新到 2015-10-9 V1.0.2版本 该版本增加了括号的支持,可以实现不同的属性在括号内or的情况,示例: Criteria criteria = Criteria.create(User.class) .where("userType", new Object[] { "1" }).beginBracket() .and("loginName"
    selfly 发表于1年前 阅读(1820) 评论(0)
  • 改进版通用dao实现四:源码及题外话

    至此,终于把这个烂尾的系列写完了,心中也不禁舒畅了下,终于可以给那些要源代码的人一个交代了。 接下来把那个定时任务系列也弄完就可以写我想写的博客了! 在实现到这里的时候,我也想过能不能把分表(分库通常由数据源完成)的操作也封装一下,但是因为分表操作往往和业务相
    selfly 发表于1年前 阅读(48242) 评论(652)
  • 改进版通用dao实现三:分页实现

    前面我们已经实现了dao的增删改查功能,但是在封装的查询方法中并没有分页方法,那么我们又要如何来实现呢? 先来看看分页查询的代码: @Test public void queryList1() { User user = new User(); PageControl.performPage(user); jdbcDao.queryList(user);
    selfly 发表于1年前 阅读(9389) 评论(6)
  • 改进版通用dao实现二:dao实现类

    前面我们已经定义好了接口,也贴出了如何使用的测试类,现在来说说dao类的实现。 其实dao类的实现并没有什么技术含量,无非就是根据传入的参数进行一个sql的拼装并执行而已,关键在于如何做才能方便和优雅一些。 先来看看实现类定义的一些成员变量: /** * jdbc操作dao *
    selfly 发表于1年前 阅读(4053) 评论(1)
  • 改进版通用dao实现一:实现说明

    最近因为事情比较多好久没写博客,一晃居然都几个月了。 之前随手写的Spring JdbcTemplate实现通用的泛型dao 和spring整合quartz整合动态定时任务系列,没想到会有那么多人向我要源码和demo, 这里要说声抱歉了,因为之前写的时候并没有特地的整理及示范的demo,也因为博客一
    selfly 发表于1年前 阅读(5039) 评论(1)