spring-data-jpa查询语句的书写实例小计

简介: //查询语句List alots = auctionLotRepository.findAllByAuctionIdAndAucIdIsNotNullAndIsOffcourtIsNullOrderByOrderNum(auctionId); 1.

//查询语句
List<AuctionLot> alots = auctionLotRepository.findAllByAuctionIdAndAucIdIsNotNullAndIsOffcourtIsNullOrderByOrderNum(auctionId);

 

1.auctionId属性与传入的值相等


2.aucId属性不能为null


3.isOffcourt属性为null


4.根据orderNum排序

 

以上,查询语句和以下效果一样

Specification<AuctionLot> spec = (root, query, cb) -> {
            List<Predicate> predicates = new ArrayList<Predicate>();
            
            Predicate predicate = cb.equal(root.get(AuctionLot_.auctionId), auctionId);
            predicates.add(predicate);
            Predicate predicate1 = cb.isNotNull(root.get(AuctionLot_.aucId));
            predicates.add(predicate1);
            Predicate predicate2 = cb.notEqual(root.get(AuctionLot_.isOffcourt), Integer.valueOf(1));
            predicates.add(predicate2);
            query.orderBy(cb.desc(root.get(AuctionLot_.orderNum)));// 根据出价时间倒序排列
            if (!predicates.isEmpty()) {
                return cb.and(predicates.toArray(new Predicate[0]));
            } else {
                return null;
            }
        };
        
        List<AuctionLot> alots = auctionLotRepository.findAll(spec);

 

相关文章
|
设计模式 Java Spring
【Spring源码】WebSocket做推送动作的底层实例是谁
我们都知道WebSocket可以主动推送消息给用户,那做推送动作的底层实例究竟是谁?我们先整体看下整个模块的组织机构。可以看到handleMessage方法定义了每个消息格式采用不同的消息处理方法,而这些方法该类并**没有实现**,而是留给了子类去实现。
215 1
【Spring源码】WebSocket做推送动作的底层实例是谁
|
监控 Java 数据处理
【Spring云原生】Spring Batch:海量数据高并发任务处理!数据处理纵享新丝滑!事务管理机制+并行处理+实例应用讲解
【Spring云原生】Spring Batch:海量数据高并发任务处理!数据处理纵享新丝滑!事务管理机制+并行处理+实例应用讲解
|
6月前
|
SQL Java 数据库
解决Java Spring Boot应用中MyBatis-Plus查询问题的策略。
保持技能更新是侦探的重要素质。定期回顾最佳实践和新技术。比如,定期查看MyBatis-Plus的更新和社区的最佳做法,这样才能不断提升查询效率和性能。
289 1
|
9月前
|
Java 微服务 Spring
微服务——SpringBoot使用归纳——Spring Boot中使用拦截器——拦截器使用实例
本文主要讲解了Spring Boot中拦截器的使用实例,包括判断用户是否登录和取消特定拦截操作两大场景。通过token验证实现登录状态检查,未登录则拦截请求;定义自定义注解@UnInterception实现灵活取消拦截功能。最后总结了拦截器的创建、配置及对静态资源的影响,并提供两种配置方式供选择,帮助读者掌握拦截器的实际应用。
379 0
|
SQL Java 数据库连接
spring和Mybatis的各种查询
Spring 和 MyBatis 的结合使得数据访问层的开发变得更加简洁和高效。通过以上各种查询操作的详细讲解,我们可以看到 MyBatis 在处理简单查询、条件查询、分页查询、联合查询和动态 SQL 查询方面的强大功能。熟练掌握这些操作,可以极大提升开发效率和代码质量。
429 3
|
消息中间件 Java Kafka
Spring boot 自定义kafkaTemplate的bean实例进行生产消息和发送消息
Spring boot 自定义kafkaTemplate的bean实例进行生产消息和发送消息
821 5
|
Java 关系型数据库 API
使用Spring Boot和PostgreSQL构建高级查询
使用Spring Boot和PostgreSQL构建高级查询
|
XML Java 数据库
Spring5入门到实战------10、操作术语解释--Aspectj注解开发实例。AOP切面编程的实际应用
这篇文章是Spring5框架的实战教程,详细解释了AOP的关键术语,包括连接点、切入点、通知、切面,并展示了如何使用AspectJ注解来开发AOP实例,包括切入点表达式的编写、增强方法的配置、代理对象的创建和优先级设置,以及如何通过注解方式实现完全的AOP配置。
|
Java Spring
Spring Boot Admin 离线实例
Spring Boot Admin 离线实例
177 0
|
Java 微服务 Spring
微服务04---服务远程调用,根据订单id查询订单功能,根据id查询订单的同时,把订单所属的用户信息一起返回,Spring提供了一个工具RestTemplate,Bean写在对象前面,以后可以在任何地
微服务04---服务远程调用,根据订单id查询订单功能,根据id查询订单的同时,把订单所属的用户信息一起返回,Spring提供了一个工具RestTemplate,Bean写在对象前面,以后可以在任何地