在使用Spring Data JPA时发现的问题

问题描述

在实际应用中,我们通常会在页面上进行组合查询,例如用户这个对象 页面上会列出用户姓名、年龄、学历、性别、地址、电话等等的一系列查询条件 最近在学习Spring Data JPA,不知这个怎么实现这种组合条件的查询啊 只能手动判断后写SQL吗

解决方案

自行扩展接口实现或者参考以下帖子http://stackoverflow.com/questions/2880209/jpa-findbyexample
解决方案二:
springdata代码下载:http://www.zuidaima.com/share/search.htm?key=springdata
解决方案三:
假如有好多字段呢,有些字段为空,有些不为空,也就是多条件动态查询呢,怎么实现呢
解决方案四:
And --- 等价于 SQL 中的 and 关键字,比如 findByUsernameAndPassword(String user, Striang pwd);IBM DW中文教程http://www.ibm.com/developerworks/cn/opensource/os-cn-spring-jpa/index.html引用 And --- 等价于 SQL 中的 and 关键字,比如 findByUsernameAndPassword(String user, Striang pwd); Or --- 等价于 SQL 中的 or 关键字,比如 findByUsernameOrAddress(String user, String addr); Between --- 等价于 SQL 中的 between 关键字,比如 findBySalaryBetween(int max, int min); LessThan --- 等价于 SQL 中的 "<",比如 findBySalaryLessThan(int max); GreaterThan --- 等价于 SQL 中的">",比如 findBySalaryGreaterThan(int min); IsNull --- 等价于 SQL 中的 "is null",比如 findByUsernameIsNull(); IsNotNull --- 等价于 SQL 中的 "is not null",比如 findByUsernameIsNotNull(); NotNull --- 与 IsNotNull 等价; Like --- 等价于 SQL 中的 "like",比如 findByUsernameLike(String user); NotLike --- 等价于 SQL 中的 "not like",比如 findByUsernameNotLike(String user); OrderBy --- 等价于 SQL 中的 "order by",比如 findByUsernameOrderBySalaryAsc(String user); Not --- 等价于 SQL 中的 "! =",比如 findByUsernameNot(String user); In --- 等价于 SQL 中的 "in",比如 findByUsernameIn(Collection<String> userList) ,方法的参数可以是 Collection 类型,也可以是数组或者不定长参数; NotIn --- 等价于 SQL 中的 "not in",比如 findByUsernameNotIn(Collection<String> userList) ,方法的参数可以是 Collection 类型,也可以是数组或者不定长参数;

时间: 2024-07-28 19:39:48

在使用Spring Data JPA时发现的问题的相关文章

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

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

springboot(五):spring data jpa的使用

在上篇文章springboot(二):web综合开发中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring data jpa 常见用法以及注意事项 使用spring data jpa 开发时,发现国内对spring boot jpa全面介绍的文章比较少案例也比较零碎,因此写文章总结一下.本人也正在翻译Spring Data JPA 参考指南,有兴趣的同学欢迎联系我,一起加入翻译中! spring data jpa介绍 首先了解JPA是什么? JPA(Ja

spring boot(五):spring data jpa的使用

在上篇文章springboot(二):web综合开发中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring data jpa 常见用法以及注意事项 使用spring data jpa 开发时,发现国内对spring boot jpa全面介绍的文章比较少案例也比较零碎,因此写文章总结一下.本人也正在翻译Spring Data JPA 参考指南,有兴趣的同学欢迎联系我,一起加入翻译中! spring data jpa介绍 首先了解JPA是什么? JPA(Ja

Spring Data JPA方法定义规范【从零开始学Spring Boot】

视频&交流平台] à SpringBoot网易云课堂视频 http://study.163.com/course/introduction.htm?courseId=1004329008 à Spring Boot交流平台 http://412887952-qq-com.iteye.com/blog/2321532           事情的起因:有人问过我们这个这个问题:为什么我利用Spring data jpa写的方法没有按照我想要的情况进行执行呢?我记得当时只是告诉他你你先看看Spring

Spring Boot 整合 Spring Data Jpa

配置spring data jpa 及 整合 druid数据库连接池 添加数据库驱动依赖和spring data jpa 依赖 我们使用的是mysql数据库,还需要添加的数据库驱动依赖是mysql-connector-java <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLoc

spring data jpa 的一些疑问

问题描述 http://www.ibm.com/developerworks/cn/opensource/os-cn-spring-jpa/<使用 Spring Data JPA 简化 JPA 开发>这篇文章相信大家一定拜读过 但是这2天我在继续试用spring data jpa中遇到了不少挫折. 首先遇到的是原文中写到"默认情况下,Spring Data JPA 实现的方法都是使用事务的.针对查询类型的方法,其等价于 @Transactional(readOnly=true):增删

8.3. Spring Data JPA

8.3.1. @Entity 8.3.1.1. @Id ID 字段 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id", unique = true, nullable = false, insertable = true, updatable = false) private int id; 8.3.1.2. @Table 8.3.1.2.1. catalog @Table(name=

5.3. Spring Data JPA

5.3.1. @Entity 5.3.1.1. @Id ID 字段 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id", unique = true, nullable = false, insertable = true, updatable = false) private int id; 5.3.1.2. @Table 5.3.1.2.1. catalog @Table(name=

分页-关于 spring data jpa 的 PagingAndSortingRepository

问题描述 关于 spring data jpa 的 PagingAndSortingRepository 比如说@query 我们使用jpql语句 select u from user u where........ 我们使用PagingAndSortingRepository进行分页和排序,可以整整返回json, 但是如果我不要其中的一个属性 我就试着把其他属性都写上去除了不要的那个 例如 select username,passoword from user u where ... 但是问题