开发指南专题十四:JEECG微云快速开发平台MiniDao 介绍

开发指南专题十四:JEECG微云快速开发平台MiniDao 介绍


13.MiniDao 介绍


13.1.MiniDao简介及特征

MiniDaoJeecg自己的持久化解决方案,具备了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自动生成

13.2.接口和SQL文件对应目录



第一步:接口定义[EmployeeDao.java]


@MiniDao


public interface EmployeeDao {


@Arguments("employee")


public List<Map>getAllEmployees(Employee employee);


@Arguments("empno")


Employee getEmployee(String empno);


@Arguments({"empno","name"})


MapgetMap(String empno,String name);


@Sql("SELECT count(*) FROMemployee")


Integer getCount();


@Arguments("employee")


intupdate(Employee employee);


@Arguments("employee")


voidinsert(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>


13.3.MiniDao接口配置


<!-- 注册MiniDao接口 -->


<bean class="org.jeecgframework.minidao.factory.MiniDaoBeanFactory">


<propertyname="packagesToScan">


<list>


<value>examples.dao.*</value>


</list>


</property>


</bean>

13.4测试代码


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(Mapmp: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"));


}


}


}


13.5. 环境搭建


环境:Spring3.X,Hibernate 3以上


MiniDao依赖:org.jeecgframework.minidao-1.2.1.jar

13.5.1.MiniDaoSpring集成


第一步:新建MiniDaospring配置文件


文件名:spring-minidao.xml(可以自定义),只要让spring扫描到这个文件即可。


扫描方法一:

web.xml中的spring监听器中扫描规则中包含spring-minidao.xml

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>classpath:spring-*.xml</param-value>

</context-param>

扫描方法二:

spring的配置文件中引入spring-minidao.xml

<import resource="classpath*:spring-minidao.xml" />



MiniDao配置详解


MiniDaospringJdbc的支持(MiniDao的核心基础配置)


<!-- MiniDao动态代理类 -->

<bean id="miniDaoHandler" class="org.jeecgframework.minidao.aop.MiniDaoHandler">

<!-- springjdbc,必须依赖 -->

<property name="jdbcTemplate" ref="jdbcTemplate"></property>

</bean>

<!-- 注册MiniDao接口 -->

<bean class="org.jeecgframework.minidao.factory.MiniDaoBeanFactory">

<property name="packagesToScan">

<list>

<!-- 可以以包名注册,自动扫描包下面的Dao接口 -->

<value>jeecg.cgreport.dao.*</value>

<value>jeecg.cgform.dao.*</value>

</list>

</property>

</bean>


13.5.2.MiniDaoHibernate集成

前提是Hibernate已经由Spring容器管理,在MiniDao的配置文件中直接加入Hibernate支持即可。


<!-- Hibernate MiniDao -->

<bean id="genericBaseCommonDao"

<!-- hibernate实体通用操作的实现类 --> class="org.jeecgframework.minidao.hibernate.dao.impl.GenericBaseCommonDao">

<!-- hibernatesessionFactory -->

<property name="sessionFactory">

<ref bean="sessionFactory" />

</property>

</bean>













  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值