全国咨询热线:18720358503

小程序app开发_jQuery条件分页 替代离线查询(附代

类别:媒体报道 发布时间:2021-01-11 浏览人次:

jQuery条件分页 代替离线查询(附代码)     投稿:sss   这篇文章主要介绍了jQuery条件分页代替离线查询,通过代码实例让读者更深入了解该功能的操作,具体操作步骤大家可查看下文的详细讲解,感兴趣的小伙伴们可以参考一下。
import javax.persistence.criteria.CriteriaBuilder; import javax.persistence.criteria.CriteriaQuery; import javax.persistence.criteria.Join; import javax.persistence.criteria.Predicate; import javax.persistence.criteria.Root; .sf.json.JSONObject; .sf.json.JsonConfig; @Action("courierAction_pageQuery") public String pageQuery() throws Exception { Pageable pageable = new PageRequest(page-1, rows); final String courierNum = model.getCourierNum(); pany = model.getCompany(); final String type = model.getType(); final Standard standard = model.getStandard(); //相当于DetchedCriteria对象.通过specification封装过滤条件 Specification Courier specification = new Specification Courier () { @Override public Predicate toPredicate(Root Courier root, CriteriaQuery query, CriteriaBuilder cb) { //root:根实体 query:排序,封装条件 CriteriaBuilder:Predicate断言工厂,产生Predicate对象 //添加过滤条件:添加快递员编号条件 //p1:实体中属性 p2:条件 List Predicate list = new ArrayList (); if(StringUtils.isNotBlank(courierNum)){ Predicate p1 = cb.equal(root.get("courierNum").as(String.class), courierNum); list.add(p1); if(pany)){ Predicate p2 = cb.equal(root.get("company").as(String.class), company); list.add(p2); if(StringUtils.isNotBlank(type)){ Predicate p3 = cb.equal(root.get("type").as(String.class), type); list.add(p3); //sql : select * from T_COURIER t inner join t_Standard s on t.c_standard_id = s.c_id // where s.c_name = '标准一(100公斤)'; //JPQL: from Courier c inner join c.standard s where s.name = ""; if(standard!=null StringUtils.isNotBlank(standard.getName())){ //返回关联对象 Join Object, Object join = root.join("standard"); Predicate p4 = cb.equal(join.get("name").as(String.class), standard.getName()); list.add(p4); if(list.size()==0){ return null; //list集合转为数组 Predicate[] restrictions = new Predicate[list.size()]; restrictions = list.toArray(restrictions); return cb.and(restrictions); Page Courier page = courierService.findAll(specification, pageable); Map String, Object map = new HashMap (); map.put("total", page.getTotalElements()); map.put("rows", page.getContent()); //将fixedares集合属性排除掉,不转json JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setExcludes(new String[]{"fixedAreas"}); String json = JSONObject.fromObject(map, jsonConfig).toString(); ServletActionContext.getResponse().setContentType("text/json;charset=utf-8"); ServletActionContext.getResponse().getWriter().write(json); return NONE; public interface CourierDao extends JpaRepository Courier, Integer , JpaSpecificationExecutor Courier {

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助~如果有疑问大家可以留言交流,谢谢大家对凡科的支持!


推荐阅读

小程序app开发_jQuery条件分页 替代离线查询(附代

jQuery标准分页查询 替代线下查寻(附编码) 文章投稿:sss 本文关键详细介绍了jQuery标准分页查询替代线下查寻,根据编码案例让阅读者更加深入入掌握该作用的实际操作,实际实...

2021-01-11
商城类微信小程序_深化浅析JavaScript中的RegExp对象

深层次浅谈JavaScript中的RegExp目标 文章投稿:mrr 正则表达式表述式(regular expression)是一种表述文字方式(即标识符串构造)的方式,有点儿像标识符串的模版,经常作为依照“给...

2021-01-11
制作网站时看似不合理的动作其实是正常的

制作网页时看起来不符合理的姿势实际上是一切正常的 : :01 大家都了解互联网在发展趋势,也觉得的到,此外网站也在发展趋势,有关制作网页的方法也产生了天翻地覆一一样的转变...

2021-01-11
广州凡科互联网科技股份有限公司招聘数据开发

招聘人数:29职位信息1、协助需求人员及产品经理,完成数据处理方案制定、数据模型设计、kettle作业及调度设计、数据仓库维护;2、根据业务部门需求完成数据处理相关kettle作业开发...

2021-01-11
广州凡科互联网科技股份有限公司招聘手游平台

招聘人数:28职位信息我们的工作是:1、熟悉公司游戏平台及平台推广的政策2、在各大网络渠道拓展游戏代理,与游戏代理沟通利润分成并且达成合作3、让代理利用他的资源渠道引入更...

2021-01-11
DDoS防范和全局网络安全网络的应对

做为毁坏力极强的网络黑客进攻方式,DDoS是一种方式较为独特的回绝服务进攻。做为一种遍布、站点,比如商业服务企业、检索模块或政府部门单位网站。因为DDoS进攻的极端性(通常...

2021-01-11
X

400-8700-61718720358503
企业邮箱2639601583@qq.com
官方微信