• 轻量级Java持久化框架,Hibernate完美助手,Minidao 1.6.2版本发布


    Minidao 1.6.2 版本发布,轻量级Java持久化框架(Hibernate完美助手)

    Minidao产生初衷?

         采用Hibernate的J2EE项目都有一个痛病,针对复杂业务SQL,hibernate能力不足,SQL不好优化也无法分离。 这个时候大家就想到集成mybatis,但是一个项目既用hibernate又用mybatis,显得很重事务也不好控制。大家常规的做法是采用springjdbc来实现原生SQL编写,但是同样存在问题,SQL无法分离也没有逻辑标签能力。

       所以为了解决这个痛病,Jeecg针对springjdbc+freemarker做了封装,出了这么一个轻量级持久层,可以让Hiberate拥有mybatis一样SQL灵活能力,同时支持事务统一、SQL标签能力。

    升级日志

    • 1,支持自增主键策略模式

    • 2,支持自定义扩展主键策略

    • 3,新增示例:自增主键策略模式

    • 4,新增示例:存储过程调用

    • 5,新增示例:自定义分页

    MiniDao 简介

    MiniDao 是一款轻量JAVA持久层框架,基于 SpringJdbc + freemarker 实现,具备Mybatis一样的SQL分离灵活性和逻辑标签。最大优点:可无缝集成Hibernate项目,支持事务统一管理,有效解决Hibernate项目,实现灵活的SQL分离问题。

    MiniDao 功能特性

    • 1. O/R mapping不用设置xml,零配置便于维护

    • 2. 不需要了解JDBC的知识

    • 3. SQL语句和java代码的分离

    • 4. SQL支持脚本语言

    • 5. 支持自动事务处理和手动事务处理

    • 6. 支持与hibernate轻量级无缝集成

    • 7. 只需接口定义,无需接口实现

    源码下载

    源码解读

    接口定义:

    @MiniDao  
    public interface EmployeeDao {  
      
     public List<Map> getAllEmployees(@Param("employee") Employee employee);  
      
     Employee getEmployee(@Param("empno") String empno);  
      
     Map getMap(@Param("empno")String empno,@Param("name")String name);  
      
     @Sql("SELECT count(*) FROM employee")  
     Integer getCount();  
      
     int update(@Param("employee") Employee employee);  
      
     void insert(@Param("employee") Employee employee);  
    }

    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>
  • 相关阅读:
    python的元类
    中国的互联网:草根与精英
    PEP8中文翻译
    一些重要的算法
    tornado模板语法
    C#l类与对象
    sql_ 存储过程
    SQL_触发器
    SQL_事务处理
    C#_方法
  • 原文地址:https://www.cnblogs.com/jeecg158/p/8784478.html
Copyright © 2020-2023  润新知