生活随笔
收集整理的這篇文章主要介紹了
MiniDao Framework 1.3.0 发布,J2EE持久化解决方案
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
MiniDao簡(jiǎn)介及特征?
MiniDao是J2EE持久化解決方案,擺脫了hibernate笨重和Mybatis的繁瑣,同時(shí)具備了實(shí)體維護(hù)和SQL分離的兩大優(yōu)點(diǎn),擬補(bǔ)了mybatis和hibernate的不足。 ?主要具有以下特征:?
?
- O/R mapping不用設(shè)置xml,零配置便于維護(hù)
- 不需要了解JDBC的知識(shí)
- SQL語(yǔ)句和java代碼的分離
- 可以自動(dòng)生成SQL語(yǔ)句
- 接口和實(shí)現(xiàn)分離,不用寫(xiě)持久層代碼,用戶只需寫(xiě)接口,以及某些接口方法對(duì)應(yīng)的sql 它會(huì)通過(guò)AOP自動(dòng)生成實(shí)現(xiàn)類
- 支持自動(dòng)事務(wù)處理和手動(dòng)事務(wù)處理
- 支持與hibernate輕量級(jí)無(wú)縫集成
- MiniDao?吸收了Hibernate+mybatis的兩大優(yōu)勢(shì),支持實(shí)體維護(hù)和SQL分離
- SQL支持腳本語(yǔ)言
詳細(xì)地址:http://zhangdaiscott.github.io/MiniDao/?
源碼下載地址:?http://zhangdaiscott.github.io/MiniDao/??
MiniDao VS mybatis :?http://blog.csdn.net/zhangdaiscott/article/details/11489885?
※ 實(shí)體的增刪改查不需要寫(xiě)sql,支持SQL自動(dòng)生成?
?
?————————————————————————————————————————?
version:?minidao-framework-1.3.0
date:? ???2013-11-26?
作者:? ???張代浩
聯(lián)系郵箱:?scott@jeecg.com
————————————————————————————————————————?
新版本改進(jìn)包括:
?
- 項(xiàng)目切換為maven工程
- 返回的key大小參數(shù)設(shè)置,SQL格式化參數(shù)
- 添加sql數(shù)據(jù)參數(shù),支持sql批處理
- dao接口支持掃描自動(dòng)加載
- 防止sql注入
?
接口和SQL文件對(duì)應(yīng)目錄?
?
接口定義[EmployeeDao.java]?
Java代碼?
public?interface?EmployeeDao?{???? @Arguments("employee")???? public?List<Map>?getAllEmployees(Employee?employee);???? ???? @Arguments("empno")???? Employee?getEmployee(String?empno);???? ???? @Arguments({"empno","name"})???? Map?getMap(String?empno,String?name);???? ???? @Sql("SELECT?count(*)?FROM?employee")???? Integer?getCount();???? ???? @Arguments("employee")???? int?update(Employee?employee);???? ???? @Arguments("employee")???? void?insert(Employee?employee);???? }???? ?
SQL文件[EmployeeDao_getAllEmployees.sql]?
?
Java代碼?
SELECT?*?FROM?employee?where?1=1????? <#if?employee.age??exists>???? ????and?age?=?:employee.age???? </#if>???? <#if?employee.name??exists>???? ????and?name?=?:employee.name???? </#if>???? <#if?employee.empno??exists>???? ????and?empno?=?:employee.empno???? </#if>????
?
?
測(cè)試代碼?
?
?
Java代碼?
public?class?Client?{???? public?static?void?main(String?args[])?{???? ????BeanFactory?factory?=?new?ClassPathXmlApplicationContext(???? ????????????"applicationContext.xml");???? ???? ????EmployeeDao?employeeDao?=?(EmployeeDao)?factory.getBean("employeeDao");???? ????Employee?employee?=?new?Employee();???? ????List<Map>?list?=??employeeDao.getAllEmployees(employee);???? ????for(Map?mp:list){???? ????????System.out.println(mp.get("id"));???? ????????System.out.println(mp.get("name"));???? ????????System.out.println(mp.get("empno"));???? ????????System.out.println(mp.get("age"));???? ????????System.out.println(mp.get("birthday"));???? ????????System.out.println(mp.get("salary"));???? ????}???? }???? }????
?
?
技術(shù)交流?
- 作者: 張代浩
- 技術(shù)論壇:www.jeecg.org
- 郵箱: zhangdaiscott@163.com
?
總結(jié)
以上是生活随笔為你收集整理的MiniDao Framework 1.3.0 发布,J2EE持久化解决方案的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。