gpt4 book ai didi

spring-data - spring data如何根据方法名生成sql?

转载 作者:行者123 更新时间:2023-12-04 14:56:17 25 4
gpt4 key购买 nike

我知道spring data jpa可以通过两种方式执行sql。一种是执行@Query包含的sql,另一种是解析方法名并生成sql。我从github克隆了spring data jpa的源代码,想知道spring data如何根据方法名生成sql。但是我找不到与parse方法名相关的类。所以,你能告诉我一些关于如何spring data jpa 关于解析方法名称的工作?谢谢

最佳答案

它是一个多步骤的过程:

  • Spring Data JPA 为存储库接口(interface)生成一个代理类。
  • 代理生成 PartTree 使用 PartTreeJpaQuery 的每个存储库方法的实例类(class)。 PartTree class 是 Spring Data Commons 模块的一部分,它是 store-specific Spring Data 模块(如 Spring Data JPA 模块)的依赖项。
  • PartTree然后传递给 JpaQueryCreator 生成 JPA CriteriaQuery实例。
  • CriteriaQuery实例被传递给底层 JPA 提供者(Hibernate、OpenJPA、EclipseLink 等),然后生成要执行的 SQL。
  • 关于spring-data - spring data如何根据方法名生成sql?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38518604/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com