MiniDao-PE精简版(轻量级持久层)
- MiniDao-PE是一种轻量级J2EE持久层解决方案,类似mybatis持久层的SQL方式,可以轻松集成Hibernate项目,事务统一管理,解决了Hibernate项目支持类mybaits的功能问题。
MiniDao实现原理:
- Minidao底层使用Spring jdbc,采用freemarker来解析sql,可以像Mybatis一样写SQL,甚至可以写逻辑。
MiniDao 功能特征:
- 1. O/R mapping不用设置xml,零配置便于维护
- 2. 不需要了解JDBC的知识
- 3. SQL语句和java代码的分离
- 4. 接口和实现分离,不用写持久层代码,用户只需写接口,以及某些接口方法对应的sql 它会通过AOP自动生成实现类
- 5. 支持自动事务处理和手动事务处理
- 6. 支持与hibernate轻量级无缝集成
- 7. SQL支持脚本语言
MiniDao(PE版特性):
- PE版为MiniDao精简版本,剔除了Hibernate依赖,追求轻量级。
&Vs Mybatis
#相同点:
1.SQL语句和java代码的分离
#不同点:
1. O/R mapping不用设置xml,零配置,简单易用
2. 接口和实现分离,不用写持久层代码,用户只需写接口,以及某些接口方法对应的SQL。它会通过AOP自动3. 生成实现类
4. 支持与hibernate轻量级无缝集成
5. SQL支持更强大的脚本语言,可以写逻辑处理
6. Sql 性能优于Mybatis
7. Sql支持传递多个参数Map/Object/List/包装类型都可以(Mybatis只支持一个参数<Map/Object>)
源码下载地址:
5 楼 xiaofengl 2016-01-19 21:47
4 楼 java疯狂开 2016-01-19 21:44
3 楼 white_crucifix 2016-01-19 17:01
哎不过要吐槽的话,就是个 spring JPA + myBatis的结合。
所谓的『不用设置xml,零配置便于维护』,但还是要提供额外的.sql文件,和 myBatis 哪里不一样了!而且每个 dao 方法对应一个 sql 文件,着实蛋疼。当然似乎这个 sql文件会自动生成,然而 spring jpa 对于常规 dao 连这个额外的(sql/xml)都是不需要,方法名称就订制了查询规则。
哎不过至少能写成这么有模有样的工具,还是可以的。
2 楼 LinApex 2016-01-19 15:29
1 楼 dsjt 2016-01-19 14:37