Atitit.列表页and查询条件的最佳实践(1)——设定搜索条件and提交查询and返回json数据

Atitit.列表页and查询条件的最佳实践(1)——设定搜索条件and提交查询and返回json数据

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

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

我要啦免费统计

版权声明:本文博主原创文章,博客,未经同意不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116833.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 利用PySpark统计相邻字符串对出现的次数

    利用PySpark统计相邻字符串对出现的次数

    2021年11月23日
  • MongoDB模糊查询($regex查询、正则表达式匹配查询)

    MongoDB模糊查询($regex查询、正则表达式匹配查询)MongoDB的模糊查询可以使用$regex运算符通过正则表达式来进行匹配查询。$regex:为查询中的模式匹配字符串提供正则表达式功能。语法:{<field>:{$regex:/pattern/,$options:‘’}}{<field>:{$regex:‘pattern’,$optio…

    2022年5月7日
  • acwing-378. 骑士放置(最小独立集)

    acwing-378. 骑士放置(最小独立集)给定一个 N×M 的棋盘,有一些格子禁止放棋子。问棋盘上最多能放多少个不能互相攻击的骑士(国际象棋的“骑士”,类似于中国象棋的“马”,按照“日”字攻击,但没有中国象棋“别马腿”的规则)。输入格式第一行包含三个整数 N,M,T,其中 T 表示禁止放置的格子的数量。接下来 T 行每行包含两个整数 x 和 y,表示位于第 x 行第 y 列的格子禁止放置,行列数从 1 开始。输出格式输出一个整数表示结果。数据范围1≤N,M≤100输入样例:2 3 0输出样例:4#include<b

    2022年8月10日
  • 用python做学生信息管理系统_python管理系统实例

    用python做学生信息管理系统_python管理系统实例Python面向对象版学员管理系统文章目录Python面向对象版学员管理系统目标一.系统需求二.准备程序文件2.1分析2.2创建程序文件三.书写程序3.1student.py3.1.2程序代码3.2managerSystem.py3.2.1定义类3.2.2管理系统框架3.3main.py3.4定义系统功能函数3.4.1添加功能3.4.2删除学员3.4.3修改学员信息3.4.5查询学员信息3.4.6显示所有学员信息3.4.7保存学员信息3.4.8加载学员信息四.总结

    2022年9月20日
  • Django设置超时时间_中时区是哪个时区

    Django设置超时时间_中时区是哪个时区前言我们都知道时区,标准时区是UTC时区,django默认使用的就是UTC时区,所以我们存储在数据库中的时间是UTC的时间,但是当我们做的网站只面向国内用户,或者只是提供内部平台使用,我们希望存储在

    2022年7月31日
  • 大数据最佳实践-基于Spark的ETL开发

    大数据最佳实践-基于Spark的ETL开发目录数据同步RDMBStoRDMBS数据同步HivetoHive数据同步RDBMStoHive数据同步hivetordmbsHDFS数据监控数据同步filetohbase数据同步RDMBStoRDMBSpackagecom.sutpc.bigdata.syncimportjava.util.Propertiesimportorg.apache.log4j.{Level,Logger}importorg.apache.spark.sql.Spark

    2022年5月27日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号