MiniDao 比Mybatis还灵活实用的J2EE 持久层轻量级解决方案
生活随笔
收集整理的這篇文章主要介紹了
MiniDao 比Mybatis还灵活实用的J2EE 持久层轻量级解决方案
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
MiniDao
詳細地址:http://zhangdaiscott.github.io/MiniDao/
源碼下載地址:http://code.google.com/p/jeecg/downloads/list
MiniDao簡介及特征
MiniDao是Jeecg自己的持久化解決方案,集成了Hibernate實體維護和Mybaits SQL分離的兩大優勢。 具有以下特征:
- 1.O/R mapping不用設置xml,零配置便于維護
- 2.不需要了解JDBC的知識
- 3.SQL語句和java代碼的分離
- 4.可以自動生成SQL語句
- 5.接口和實現分離,不用寫持久層代碼,用戶只需寫接口,以及某些接口方法對應的sql 它會通過AOP自動生成實現類
- 6.支持自動事務處理和手動事務處理
- 7.支持與hibernate輕量級無縫集成
- 8.MiniDao整合了Hibernate+mybatis的兩大優勢,支持實體維護和SQL分離
- 9.SQL支持腳本語言
※向下兼容Hibernate實體維護方式,實體的增刪改查SQL自動生成
接口和SQL文件對應目錄
接口定義[EmployeeDao.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]
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>測試代碼
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"));} } }技術交流
- 作者: 張代浩
- 技術論壇:www.jeecg.org
- 郵箱: zhangdaiscott@163.com
- 交流群:325978980,143858350
總結
以上是生活随笔為你收集整理的MiniDao 比Mybatis还灵活实用的J2EE 持久层轻量级解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ActionT和FuncT委托
- 下一篇: [转] 有什么郁闷的就看看这驴!