spring mvc + spring data jpa 带条件的查询分页的问题

问题描述

如题,springdatajpa用的是hibernate的实现。dao层继承了JpaRepository接口。初接触springdatajpa,求大神给小女子一个带条件的查询分页的demo。感激不尽!

解决方案

本帖最后由 shuzhen526 于 2013-04-01 14:16:52 编辑
解决方案二:
下载springside例子,继承了分页demo
解决方案三:
引用1楼lvzg_005的回复:

下载springside例子,继承了分页demo

我想用springdatajpa的接口中提供的分页。。。
解决方案四:
想用就用呗。createQuery,setParameter,setFirstResult,setMaxResults,getResultList,不就这么几步吗。
解决方案五:
@ComponentpublicinterfaceTaskDaoextendsPagingAndSortingRepository<Task,Long>,JpaSpecificationExecutor<Task>{Page<Task>findByUserId(Longid,PageablepageRequest);@Modifying@Query("deletefromTasktaskwheretask.user.id=?1")voiddeleteByUserId(Longid);}

publicPage<Task>getUserTask(LonguserId,Map<String,Object>searchParams,intpageNumber,intpageSize,StringsortType){PageRequestpageRequest=buildPageRequest(pageNumber,pageSize,sortType);Specification<Task>spec=buildSpecification(userId,searchParams);returntaskDao.findAll(spec,pageRequest);}/***创建分页请求.*/privatePageRequestbuildPageRequest(intpageNumber,intpagzSize,StringsortType){Sortsort=null;if("auto".equals(sortType)){sort=newSort(Direction.DESC,"id");}elseif("title".equals(sortType)){sort=newSort(Direction.ASC,"title");}returnnewPageRequest(pageNumber-1,pagzSize,sort);}/***创建动态查询条件组合.*/privateSpecification<Task>buildSpecification(LonguserId,Map<String,Object>searchParams){Map<String,SearchFilter>filters=SearchFilter.parse(searchParams);filters.put("user.id",newSearchFilter("user.id",Operator.EQ,userId));Specification<Task>spec=DynamicSpecifications.bySearchFilter(filters.values(),Task.class);returnspec;}

帮你贴了一部分springside源码看用的上不,或者看看从这里面悟出些道道不
解决方案六:
引用3楼forgetsam的回复:

想用就用呗。createQuery,setParameter,setFirstResult,setMaxResults,getResultList,不就这么几步吗。

请问能讲详细一点么……
解决方案七:
引用5楼shuzhen526的回复:

引用3楼forgetsam的回复:想用就用呗。createQuery,setParameter,setFirstResult,setMaxResults,getResultList,不就这么几步吗。请问能讲详细一点么……

我是来看丫头的!
解决方案八:
楼主,问题如何解决的,jpa之前木有用过!
解决方案九:
taskDao中的findAll怎么不贴全?
解决方案十:
分页应该在写sql的时候,配置开始id和结束id就行了吧
解决方案十一:
谢谢各位啊。问题早就解决了,由于时间关系没来得及结贴,再次感谢。PagingAndSortingRepository这个接口中有带条件的分布查询方法,根据它的规范并传进去相应的参数即可。
解决方案十二:
引用3楼forgetsam的回复:

想用就用呗。createQuery,setParameter,setFirstResult,setMaxResults,getResultList,不就这么几步吗。

跟这个差不多。就是这么用的。
解决方案十三:
引用4楼lvzg_005的回复:

@ComponentpublicinterfaceTaskDaoextendsPagingAndSortingRepository<Task,Long>,JpaSpecificationExecutor<Task>{Page<Task>findByUserId(Longid,PageablepageRequest);@Modifying@Query("deletefromTasktaskwheretask.user.id=?1")voiddeleteByUserId(Longid);}

publicPage<Task>getUserTask(LonguserId,Map<String,Object>searchParams,intpageNumber,intpageSize,StringsortType){PageRequestpageRequest=buildPageRequest(pageNumber,pageSize,sortType);Specification<Task>spec=buildSpecification(userId,searchParams);returntaskDao.findAll(spec,pageRequest);}/***创建分页请求.*/privatePageRequestbuildPageRequest(intpageNumber,intpagzSize,StringsortType){Sortsort=null;if("auto".equals(sortType)){sort=newSort(Direction.DESC,"id");}elseif("title".equals(sortType)){sort=newSort(Direction.ASC,"title");}returnnewPageRequest(pageNumber-1,pagzSize,sort);}/***创建动态查询条件组合.*/privateSpecification<Task>buildSpecification(LonguserId,Map<String,Object>searchParams){Map<String,SearchFilter>filters=SearchFilter.parse(searchParams);filters.put("user.id",newSearchFilter("user.id",Operator.EQ,userId));Specification<Task>spec=DynamicSpecifications.bySearchFilter(filters.values(),Task.class);returnspec;}

帮你贴了一部分springside源码看用的上不,或者看看从这里面悟出些道道不

跟这个差不多。就是这么用的。
解决方案十四:
到底怎么用啊美女
解决方案十五:
美女求demo急用啊
解决方案:
SearchFilter需要自己构造对吗?
解决方案:
详细点吧美女!!
解决方案:
时间太久了,我现在手上没有源码。dao层的接口要继承这个PagingAndSortingRepository接口,它里面有分页排序查询的接口,传相应的参数进去即可,不用自己来实现可直接调用。
解决方案:
引用17楼shuzhen526的回复:

时间太久了,我现在手上没有源码。dao层的接口要继承这个PagingAndSortingRepository接口,它里面有分页排序查询的接口,传相应的参数进去即可,不用自己来实现可直接调用。

这个里面的参数具体怎么传啊。我是要TIMEbetween***and***andname=***怎么传值进去。。
解决方案:
引用17楼shuzhen526的回复:

时间太久了,我现在手上没有源码。dao层的接口要继承这个PagingAndSortingRepository接口,它里面有分页排序查询的接口,传相应的参数进去即可,不用自己来实现可直接调用。

这个里面的参数具体怎么传啊。我是要TIMEbetween***and***andname=***怎么传值进去。。
解决方案:
packagecom.mediaadx.dynamix.authority.dao;importjava.util.List;importorg.springframework.data.domain.Page;importorg.springframework.data.domain.Pageable;importorg.springframework.data.jpa.repository.Query;importorg.springframework.data.repository.PagingAndSortingRepository;importcom.mediaadx.dynamix.account.entity.UserAccount;importcom.mediaadx.dynamix.authority.entity.Security;publicinterfaceISecurityDAOextendsPagingAndSortingRepository<Security,Long>{Page<Security>findByUserNameLike(Stringname,Pageablepageable);}

注意里面使用Page,Pageable是spring的类,Security是个entity里面有属性user<UserAccount>,UserAccount里面有个name<String>
解决方案:
引用20楼whos2002110的回复:

packagecom.mediaadx.dynamix.authority.dao;importjava.util.List;importorg.springframework.data.domain.Page;importorg.springframework.data.domain.Pageable;importorg.springframework.data.jpa.repository.Query;importorg.springframework.data.repository.PagingAndSortingRepository;importcom.mediaadx.dynamix.account.entity.UserAccount;importcom.mediaadx.dynamix.authority.entity.Security;publicinterfaceISecurityDAOextendsPagingAndSortingRepository<Security,Long>{Page<Security>findByUserNameLike(Stringname,Pageablepageable);}

注意里面使用Page,Pageable是spring的类,Security是个entity里面有属性user<UserAccount>,UserAccount里面有个name<String>

大神,能加下QQ说么。。。416192245
解决方案:
springdatajpa没玩过啊!
解决方案:
引用18楼Y19900528的回复:

Quote: 引用17楼shuzhen526的回复:
时间太久了,我现在手上没有源码。dao层的接口要继承这个PagingAndSortingRepository接口,它里面有分页排序查询的接口,传相应的参数进去即可,不用自己来实现可直接调用。

这个里面的参数具体怎么传啊。我是要TIMEbetween***and***andname=***怎么传值进去。。

publicinterfaceUserRepositoryextendsCrudRepository<User,Integer>{//继承你需要的接口UserfindByNameAndTimeBetween(Stringname,DatestartDate,DateendDate);//在这里声明一下你需要的接口,当然,这个接口名得按照框架的规范来写。有的接口里已经存在的方法了,就不需要声明了。@Query("selectufromUseruwhereu.firstname=?")List<User>findByFirstname(Stringfirstname);//当然,如果实在满足不了你的需求,你也可以这样来自己写查询语句//那个分页的,dao层的接口要继承这个PagingAndSortingRepository接口,然后直接调用方法传参数就可以了,实在不懂的加我qq吧,173636035}

接口名的规范:
解决方案:
学习帖,收藏了。
解决方案:
springdatajpa相关代码demo下载:
解决方案:
ad

时间: 2024-09-20 00:07:53

spring mvc + spring data jpa 带条件的查询分页的问题的相关文章

代码-spring data jpa 按条件分页查询问题

问题描述 spring data jpa 按条件分页查询问题 自定义分页查询方法,代码: {"content":[],"totalPages":1,"totalElements":6,"last":true,"number":1,"size":10,"numberOfElements":0,"sort":null,"first"

spring data jpa 多条件查询判读问题

问题描述 spring data jpa 多条件查询判读问题 在使用Spring Data JPA时发现的问题在实际应用中,我们通常会在页面上进行组合查询,例如用户这个对象 页面上会列出用户姓名.年龄.学历.性别.地址.电话等等的一系列查询条件 最近在学习Spring Data JPA,不知这个怎么实现这种组合条件的查询啊 只能手动判断后写SQL吗 解决方案 Spring jpa data多条件分页查询spring data jpa 分页查询 解决方案二: 不用手动写SQL的,SpringJPA

mvc注解-spring MVC注解 + hibernate +jpa配置 出错 具体如下

问题描述 spring MVC注解 + hibernate +jpa配置 出错 具体如下 这个是错误 No unique bean of type [javax.persistence.EntityManagerFactory] is defined: expected single bean but found 0 下面为XML配置文件 web.xml 导入hibernate <filter> <filter-name>openEntityManagerInViewFilter&

sql查询问题-SQL2005/2008 无法执行带条件的查询

问题描述 SQL2005/2008 无法执行带条件的查询 现在遇到一个很困惑的问题,使用SQl 2005和2008都存在这样的问题,我有两个程序一直在对数据进行操作读写操作,每次运行一段时间后会出现: "超时时间已到.在操作完成之前超时时间已过或服务器未响应. (.Net SqlClient Data Provider) ",错误:当出现错一后程序无法执行带条件的查询,进入SQL Server Management Studio 中执行同样带条件的查询,出现同样的超时错误.现在在网上搜

Spring MVC Spring MyBatis 整合 - 快速上手

我个人比较喜欢写注释,在工作中对注释的重要性看的也比较高,所以大部分文字都在注释中,代码外的文字会写的偏少,关键能懂就行 先看一下整合后的工程目录(单工程,多工程以后会采用maven) 5个package分别对应 action, entity, mapper(也就是DAO,采用动态代理), service, service 实现类 resources 下 相关资源文件: db.properties: 数据库连接参数 log4j.properties: 日志 applicationContext-

基于Spring MVC+Spring JPA技术使用Spring全注解开发大型商业ERP项目

问题描述 基于SpringMVC+SpringJPA技术使用Spring全注解开发大型商业ERP项目的视频教程分享 解决方案 解决方案二:资源位2k?这个是怎么算的?

带着问题学 Spring MVC 源码: 一、概述

Q:什么是 Spring MVC ? ※ Spring MVC 是 Spring Web 的一个重要模块.Spring 支持 Web 应用,Spring MVC 是对 MVC 模式的支持. Q:MVC 模式? ※ MVC 模式是种经典的软件架构,分 Model 模型.View 视图及 Controller 控制器 三种角色.架构的意图明显区分三种角色的职责,使其不相互依赖.Java 领域最经典的实现 JSP + Servlet + JavaBean,后续也陆续出来了众多优秀框架,SSH 中的 S

spring mvc+ELK从头开始搭建日志平台

spring mvc+ELK从头开始搭建日志平台 最近由于之前协助前公司做了点力所能及的事情,居然收到了一份贵重的端午礼物,是给我女儿的一个乐高积木,整个有7大包物件,我花了接近一天的时间一砖一瓦的组织起来,虽然很辛苦但是能够从过程中体验到乐趣.这次将分享从头搭建分布式日志系统,主要是在spring mvc上结合ELK套件实现(之前有些工作由于分工不同由不同的同事来完成,我只是在已经配置好的环境下做开发而已),包含如下这些技术点: spring mvc logback logstash elas

spring MVC 导出excel

原文地址:http://liuzidong.iteye.com/blog/1071823 参考资料  1 用spring MVC 生成Excel和PDF http://blog.csdn.net/linlzk/archive/2008/11/27/3389925.aspx 2 Spring MVC export data to Excel file via AbstractExcelView http://www.mkyong.com/spring-mvc/spring-mvc-export-d