Spring Boot中存储库的默认“ findById”函数的运行时是什么?

来源:爱站网时间:2021-09-28编辑:网友分享
Spring Boot中存储库的默认“ findById”函数的运行时是什么?它是否需要订单ID并在整个订单表中查找特定的订单?还是直接获得特定订单? 这一系列的问题问的大家是不是一愣一愣的,别担心,爱站技术小编用一篇文章帮你们一一解开这些谜团,大家一起来看看吧。

问题描述


对于简单的@PutMapping(请参见下文),它是否需要订单ID并在整个订单表中查找特定的订单?还是直接获得特定订单?

orderRepository继承自JpaRepository;数据库是MySQL

 

//Update a order:
    @PutMapping("/orders/{id}")
    public Order updateOrder(@PathVariable(value = "id") Long orderId, @Valid @RequestBody Order orderDetails) throws OrderNotFoundException {
        Order order = orderRepository.findById(orderId).orElseThrow(() -> new OrderNotFoundException(orderId));
        order.setMerchant(orderDetails.getMerchant());
        order.setStore(orderDetails.getStore());
        Order updatedOrder = orderRepository.save(order);
        return updatedOrder;
    }

思路:


您可以看到通过将以下行添加到属性(application.properties)文件中而发生的sql查询:

spring.jpa.show-sql=true spring.jpa.properties.hibernate.format_sql=true

findById休眠查询行形成如下:

select order0_.id as id1_0_0_, order0_.name as name2_0_0_ from app_order order0_ where order0_.id=?

id字段在订单表中作为位置条件进行搜索。在WHERE子句中,可以指定具有一个或多个条件的搜索条件(逻辑表达式)。

您可以阅读以下文章作为建议:SQL WHERE子句为here

Spring Data JPA核心概念是here

以上内容就是爱站技术频道小编为大家分享的Spring Boot中存储库的默认“ findById”函数的运行时是什么?,看完以上分享之后,大家应该都知道函数的运行时是什么了吧。

 

上一篇:在哪里放置REST保证的测试比较合适?

下一篇:对于Apache poi折线图,如何使第一列不在y轴上显示?

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载