日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MiniDao 比Mybatis还灵活实用的J2EE 持久层轻量级解决方案

發布時間:2025/3/17 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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 持久层轻量级解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。