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)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • Java基础知识总结(2021版)「建议收藏」

    前言大家好,我是素小暖,2012年毕业,2016年通过培训转行java开发,今天2021年1月9日,转行之路跌跌绊绊,蓦然回首,已经满满的4年工作经验了?但感觉知识还是相当的匮乏,没自信,也许是努力程度还不够吧。很感谢CSDN,因为是它给了我学习的动力,之前写了一篇记录CSDN博客访问量的文章,也许大家感觉很幼稚,但真的很有用,很有效果,仿佛磕了药一样,努力学习,进步。2020年,是我较为成功的一年,工作上,跳了槽,涨了工资;学习上,啃了几本名著(EffectiveJava、重构改善既.

    2022年4月7日
  • PHP面试-复习知识点整理

    PHP面试-复习知识点整理

    2022年2月10日
  • 动态规划经典题目_动态规划详解

    动态规划经典题目_动态规划详解一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?示例 1:输入:m = 3, n = 7输出:28示例 2:输入:m = 3, n = 2输出:3解释:从左上角开始,总共有 3 条路径可以到达右下角。向右 -> 向下 -> 向下向下 -> 向下 -> 向右向下 -> 向右 -&gt

    2022年8月9日
  • 一文看懂YOLO v3

    一文看懂YOLO v3论文地址:https://pjreddie.com/media/files/papers/YOLOv3.pdf论文:YOLOv3:AnIncrementalImprovementYOLO系列的目标检测算法可以说是目标检测史上的宏篇巨作,接下来我们来详细介绍一下YOLOv3算法内容,v3的算法是在v1和v2的基础上形成的,所以有必要先回忆:一文看懂YOLOv2,一文看懂YOLOv2…

    2022年6月29日
  • 网络爬虫原理解析「建议收藏」

    1、网络爬虫原理网络爬虫指按照一定的规则(模拟人工登录网页的方式),自动抓取网络上的程序。简单的说,就是讲你上网所看到页面上的内容获取下来,并进行存储。网络爬虫的爬行策略分为深度优先和广度优先。如下图是深度优先的一种遍历方式是A到B到D到E到C到F(ABDECF)而宽度优先的遍历方式ABCDEF。2、写网络爬虫的原因(1)互联网中的数据量大,我们不能人工的去收集数据,这样会很浪费时间与金钱…

    2022年4月10日
  • 教你如何免费使用云服务器「建议收藏」

    教你如何免费使用云服务器「建议收藏」深度学习没有GPU?!!教你如何白嫖服务器一、声明二、引言二、如何获取三、操作步骤3.1文件传输软件的安装3.3远程操控软件的安装四、资料软件分享五、总结教你如何白嫖服务器)一、声明本文章没有广告用意,只是觉得好用分享给大家。同时做个简单的记录。二、引言因为电脑只有CPU,算力不够,以及很多深度学习教程以及模型都是在GPU环境下进行,所以一直想着怎么样才能白嫖到服务器,毕竟云服务器不便宜,要是经常用的话,对学生党来说是一笔不小的支出。有一天经过群友推荐终于找到了一个可以免费试用200元的云服

    2022年9月26日

发表回复

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

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