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
Atitit.列表页面and条件查询的实现最佳实践(1)------设置查询条件and提交查询and返回json数据相关推荐
- oracle数据库如何写翻页_ORACLE数据库分页查询/翻页 最佳实践
ORACLE数据库分页查询/翻页 最佳实践 一.示例数据: Select Count(*) From dba_objects ; ----------------------------------- ...
- atitit.人脸识别的应用场景and使用最佳实践 java .net php
atitit.人脸识别的应用场景and使用最佳实践 java .net php 1. 人脸识别的应用场景 1 2. 框架选型 JNI2OpenCV.dll and JavaCV 1 3. Url ap ...
- SpringMVC响应使用案例(带数据页面跳转,快捷访问路径,返回json数据)
页面跳转 转发(默认) @RequestMapping("/showPage1") public String showPage1() {System.out.println(&q ...
- (配置消息转换器)解决后台返回json数据到前台时页面时中文显示乱码问题
(配置消息转换器)解决后台返回json数据到前台时页面时中文显示乱码问题 SpringMVC.xml中加 <!-- 配置消息转换器(解决中文乱码问题)--><mvc:annotati ...
- java后台对查询到的商品列表按店铺分组并返回json数据
List<ShoppingCart> cartList = shoppingService.getCartList(userId);//这是从数据库获取的购物车商品列表 Map<In ...
- php 查询数据库返回json数据
// 设置返回json格式数据 header('content-type:application/json;charset=utf8'); //连接数据库 $link = mysql_connect( ...
- python中怎么设置默认值_在Python中设置应该是列表的参数的默认值的最佳实践?...
我有一个将列表作为参数的python函数.如果我将参数的默认值设置为如下空列表: def func(items=[]): print items 皮林特会告诉我"危险的默认值[]作为参数&q ...
- 微信公众号最佳实践 ( 7.2)交通信息查询
交通信息查询 交通信息是是属于公共信息,已经有很多大型网站提供了响应的查询和查看功能,但是这些信息的后台数据往往并不对外开放,一是因为获取成本高,二是怕添加一个新的竞争对手,但好在很多第三方网站提供了 ...
- PHP封装一个手机号归属地查询接口,Ctrl CV就可以用,返回json数据
PHP归属地查询接口 <?php //200->正常;201手机号不正确;202手机号无数据 header("Access-Control-Allow-Origin:*" ...
- html页面返回json数据为空,在Html页面中,展示出Json格式数据,且保持缩进格式...
1.定义一个标签,给个id值. 2.用js定义一个json字符串,用jQuery给id,赋值 var songResJson = { "id" : "b52c96bea3 ...
最新文章
- python表单防重复提交_防止表单重复提交的几种策略
- html5复选框样式,11种炫酷CSS3复选框checkbox样式美化效果
- Xcode代码文件模板
- vivo 2019:关于企业文化如何影响手机企业发展的三个追问
- anaconda使用记录
- flex 解析json文件_使用 Python 处理 JSON 格式的数据 | Linux 中国
- 《凡人修仙传》中打斗场景(c++多态实现)
- composer 更改为中国镜像
- linux建立动态库链接,Linux动态链接库.so文件的创建与使用
- Docker学习总结(38)——开发环境中使用docker run安装Redis再总结
- python数组就是列表吗,Python:数组与列表
- 安卓设置菊花动画_华为手机必须调整的4个默认设置,让手机流畅到飞起,用到2035年...
- 以Graphicslayer为管理组来管理Element.
- 绿联USB转RS-485/422转换器
- JN5169 Bootload 烧录过程和DIY烧录程序(一)
- U盘拔出时总是提示有程序正在使用?
- 6-1 插入法建立有序链表
- 微信公众号开发(一) 微信网页授权登录
- qcustomplot x轴当前时间_Qt使用QCustomPlot开发
- 带你用selenium IDE的录制第一个自动化测试脚本
热门文章
- kafka报错 WARN Session 0x0 for server null, unexpected error, closing socket connection
- JS魔法堂:元素克隆、剪切技术研究
- Ubuntu下hadoop2.4搭建集群(单机模式)
- Centos7+LVS+Keepalived实现Exchange2016高可用性
- ios 纯代码 图标排列
- LVS负载均衡群集之NAT模型DR模型
- 带有权限设置的Excel协同编辑
- Springboot druid 监控sql语句
- python基础和软件测试
- HNOI2013 切糕