zoukankan      html  css  js  c++  java
  • Atitit.列表页面and条件查询的实现最佳实践(1)设置查询条件and提交查询and返回json数据

    Atitit.列表页面and条件查询的实现最佳实践(1)------设置查询条件and提交查询and返回json数据

    1. 1. 配置条件字段@Conditional 1 1

    2. 2. 配置条件字段显示类型为range----@Conditional(displayType = displayType.rang, rangStart = rang.start, rangEnd = rang.end,op=op.range) 1

    3. #----show  condition  page  list 1

    4. 提交条件查询表单by dwr 1

    5. @filter  ::   set filter condition use or not use ....or save form .... 2

    6. @converter 2

    7. #----保存每一个条件map 4 调试 2

    8. #====start 2

    9. Sigle,range>>>>  wehere  cause 2

    10. Hb pageing 2

    11. Ret  page map 2

    12. #----code 3

    13. 参考 5

    1. 1. 配置条件字段@Conditional 1

    2. 2. 配置条件字段显示类型为range----@Conditional(displayType = displayType.rang, rangStart = rang.start, rangEnd = rang.end,op=op.range)  

    或者dispayType.single..

    作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

    转载请注明来源: http://blog.csdn.net/attilax

    3. #----show  condition  page  list

    4. 提交条件查询表单by dwr

    //queryBtn_click

    Query(1)

    function query(isResetPage1)

    {

    if(isResetPage1==1)

     resetPageTo1();

    var mp=dwr.util.getFormValues("formx");

    elmtC.findByPropertyss_page(mp ,function(data){

    //alert("保存成功");

     bindTableData(data.rows);

      setPageInfo({"total":data.total,"pageSize":10});

    });

    }

    5. @filter  ::   set filter condition use or not use ....or save form ....

    6. @converter

    7. #----保存每一个条件map 4 调试

    filex.save_safe( core.toJsonStr(QueryPropertyssMap) , "c:\\json2.txt");

     

    8. #====start

    for (Field fld : flds) {

    Conditional cdt = fld.getAnnotation(Conditional.class);

    if (cdt == null)

    continue;

    .......

     

    9. Sigle,range>>>>  wehere  cause

    10. Hb pageing

    11. Ret  page map 

    Map mp=new HashMap();

    mp.put("total" ,SafeVal.val( threadLocal_rowsCount.get(),list_sub.size()));

    mp.put("rows",list_sub);

    12. #----code

    public List findByPropertyss(Map QueryPropertyssMap) {

    // log.debug("finding GvMaterial instance with property: " +

    // propertyName + ", value: " + value);

     core. log("---o720--");

    core.logMap(QueryPropertyssMap);

    filex.save_safe( core.toJsonStr(QueryPropertyssMap) , "c:\\json2.txt");

    String propertyName;

    Object value;

    Criteria c = getSession().createCriteria(GvMaterial.class);

    Field[] flds = GvMaterial.class.getDeclaredFields();

    for (Field fld : flds) {

    try {

    String fldName = fld.getName();

    if (fldName.startsWith("playtime")) {

    String s = "";

    }

    if (!includeFldInfoPostMap(QueryPropertyssMap, fldName))

    continue;

    Conditional cdt = fld.getAnnotation(Conditional.class);

    if (cdt == null)

    continue;

    if (cdt.adptr() != None.class) // cstm mode

    //

    {

    List li = adptrMOde(QueryPropertyssMap, c, fld, fldName,

    cdt);

    addExpresss(c, li);

    } else if (cdt.displayType().equals(displayType.single)) {

    // if

    // (fld.getType().getName().equals(String.class.getName()))

    // {

    List<Criterion> exprsLi = getExprs(fldName, cdt.op(),

    QueryPropertyssMap);

    core.log(String.format("--o7f1: dbg fldinfo: %s---%s ",

    fldName, QueryPropertyssMap.get(fldName)));

    addExpresss(c, exprsLi);

    // Restrictions.like(fldName, "%" + + "%")

    } else if (cdt.displayType().equals(displayType.rang)) {

    List<Criterion> exprsLi = getExprs(fldName, cdt.op(),

    QueryPropertyssMap);

    core.log(String.format("--o7f1: dbg fldinfo: %s---%s ",

    fldName, QueryPropertyssMap.get(fldName)));

    addExpresss(c, exprsLi);

    }

    //

    } catch (Exception e) {

    core.log(e);

    }

    // c.add(Restrictions.eq("aname",name));//eq是等于,gt是大于,lt是小于,or是或

    }

    c.addOrder(Order.desc("materialId"));

    List<GvMaterial> list = c.list();

    threadLocal_rowsCount.set(list.size());

    Object page = QueryPropertyssMap.get("page_page");

    List<GvMaterial> list_sub = PagingUtil.getList(list,

    QueryPropertyssMap.get("pagesize"), page);

    return list_sub;

    }

    13. 参考

    atitit.提升开发效率---MDA 软件开发方式的革命(5)----列表查询建模 - attilax的专栏 博客频道 - CSDN.NET.htm

    我要啦免费统计
  • 相关阅读:
    cgi、wsgi、uwsgi 与 uWSGI
    docker入门
    python模块学习 -openpyxl
    linux考试题
    爬虫-scrapy的中间件
    scrapy框架简单学习
    爬虫中的selenium简单学习及案例
    2.python数据结构的性能分析
    1.数据结构&算法的引言+时间复杂度
    Jenkins—Master/Slave模式
  • 原文地址:https://www.cnblogs.com/attilax/p/15199156.html
Copyright © 2011-2022 走看看