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);

 

相关文章
|
8月前
|
设计模式 Java Spring
【Spring源码】WebSocket做推送动作的底层实例是谁
我们都知道WebSocket可以主动推送消息给用户,那做推送动作的底层实例究竟是谁?我们先整体看下整个模块的组织机构。可以看到handleMessage方法定义了每个消息格式采用不同的消息处理方法,而这些方法该类并**没有实现**,而是留给了子类去实现。
【Spring源码】WebSocket做推送动作的底层实例是谁
|
8月前
|
监控 Java 数据处理
【Spring云原生】Spring Batch:海量数据高并发任务处理!数据处理纵享新丝滑!事务管理机制+并行处理+实例应用讲解
【Spring云原生】Spring Batch:海量数据高并发任务处理!数据处理纵享新丝滑!事务管理机制+并行处理+实例应用讲解
|
1月前
|
SQL Java 数据库连接
spring和Mybatis的各种查询
Spring 和 MyBatis 的结合使得数据访问层的开发变得更加简洁和高效。通过以上各种查询操作的详细讲解,我们可以看到 MyBatis 在处理简单查询、条件查询、分页查询、联合查询和动态 SQL 查询方面的强大功能。熟练掌握这些操作,可以极大提升开发效率和代码质量。
75 3
|
6月前
|
消息中间件 Java Kafka
Spring boot 自定义kafkaTemplate的bean实例进行生产消息和发送消息
Spring boot 自定义kafkaTemplate的bean实例进行生产消息和发送消息
229 5
|
5月前
|
XML Java 数据库
Spring5入门到实战------10、操作术语解释--Aspectj注解开发实例。AOP切面编程的实际应用
这篇文章是Spring5框架的实战教程,详细解释了AOP的关键术语,包括连接点、切入点、通知、切面,并展示了如何使用AspectJ注解来开发AOP实例,包括切入点表达式的编写、增强方法的配置、代理对象的创建和优先级设置,以及如何通过注解方式实现完全的AOP配置。
|
5月前
|
Java Spring
Spring Boot Admin 离线实例
Spring Boot Admin 离线实例
40 0
|
6月前
|
Java 关系型数据库 API
使用Spring Boot和PostgreSQL构建高级查询
使用Spring Boot和PostgreSQL构建高级查询
|
6月前
|
Java 微服务 Spring
微服务04---服务远程调用,根据订单id查询订单功能,根据id查询订单的同时,把订单所属的用户信息一起返回,Spring提供了一个工具RestTemplate,Bean写在对象前面,以后可以在任何地
微服务04---服务远程调用,根据订单id查询订单功能,根据id查询订单的同时,把订单所属的用户信息一起返回,Spring提供了一个工具RestTemplate,Bean写在对象前面,以后可以在任何地
|
7月前
|
Java Maven Spring
Spring中AOP最简单实例-@注解形式
Spring中AOP最简单实例-@注解形式
47 0
|
7月前
|
XML Java Maven
Spring中AOP最简单实例-XML形式
Spring中AOP最简单实例-XML形式
30 0