2016年3月16

dorado 分页查询

public void findbypage(page<entity> page){
    dao.getALl(page);
}

dorado的datapilot默认不会过滤

showfilterBar设置过滤蓝的开启
filterMode:true是设置服务器端的过滤开启

public void filter(Page<entiry> page,Criteria criteria){
DetachedCriteria detachedCriteria=
DetachedCriteria.forClass(SlEmployee.class);
if(criteria!=null){
    dao.find(page,hibernatUtiles.filter(detachedCriteria,criteria))
    }
    else{
    dao.getAll(page);
    }
}

如果autofrom要获得表格的值时候,要get(“entity”),然后再一一获得表格属性内容


根据session的值获取用户填充datagride
public Collection<Entiy> getEntybyName(String name){
    Map p=HashMap();
    if(StringHelper.isNotempty(p)){
    p.put("name",name)
    return dao.find("from enty where name=:name",name)
}
else{
    return null;
    }
}

dorado在存储单表的时候直接saveAll就可以了,但是如果值两主从表,从表就不能存储,因此要更换一种方法;

public void saveALlaLltable(Collection<Entiy> entitys){
    for(entity e:entitys){
    otherentity os=e.getOthers();
        for(Other o:os){
            o.setEntity(entity);
        }
        dao,persisentitys(entitys);
    }
}

添加子表很简单,只是添加#.<子表名>,然后dorado自动生成子表


性能优化,一般要在从表的datetype中设置Reference属性,peremater设置成$${this.entityId}.,后台方法一般如下

public void getentitybyid(page<entity> page,Integer id){
    String hql="from entity where id=:id"
    Map m=new HashMap();
    m.put("id",id);
    dao.find(page,hql,m);

}

递归树的方法,一般如下,
1,dataTree,和form表格都要定义相同的dataset
2,datatree的currentNodeDataPath:定义一个片段“PD”
3,from表格的dataPath属性定义为”!PD“,取出树的内容
后台代码一般如下

public Collection<Entity> gettopentity(){
return dao.find("from entity where entity.entityID =null");
}

主从树直接返回getAll即可

项目开发中我们会遇到很多诸如此类的情况:
性别数据库存的是10,界面显示希望是"男""女";
婚否数据库存的是Y和N,界面显示希望是"是""否";
在datatype中设置
mapping->mapValues  ${dorado.getDataProvider("marriedDropDownInterceptor#getMarriedState").getResult()}    
后台需要添加如下方法;
@DataProvider
    public Map<String,String> getMarriedState(){
        Map<String,String> mapValue = new LinkedHashMap<String, String>();
        mapValue.put("true", "已婚");
        mapValue.put("false", "未婚");
        return mapValue;
    }
   当然也可以设置maping映射在mapingValue的edit中进行编辑,唯一的区别是,是否从后台获取数据,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值