java - 如何在 JPA 存储库方法中使用部分组合键来获取数据?

标签 java spring spring-boot spring-data-jpa many-to-one

我有一个带有 EmbeddedId 的类应用程序,embbbedID 中的第二列是 forgein 键并且与报价有多对一的关系。

@Entity
   public class Application implements Serializable{

private Integer id;

@EmbeddedId
private MyKey mykey;

private String resume;

@Enumerated(EnumType.STRING)
@NotNull
private ApplicationStatus applicationStatus;

    @Embeddable
public class MyKey implements Serializable{

    private static final long serialVersionUID = 1L;
    @NotNull
    private String emailId;
    @ManyToOne(fetch = FetchType.LAZY)
    @NotNull
    private Offer offer;

在 Offer 中类映射是在 jobTitle 上完成的。

 @Repository
interface ApplicationRepository extends JpaRepository <Application,MyKey>

{

List<Application> findAllByMyKey_Offer(String jobTitle);
}

尝试过但没有成功...... 我想获取有关特定 jobTitle 的所有应用程序。 ApplicationRepository 类中的方法名称应该是什么。

最佳答案

你的方法名错了,正确的是findAllByMykey_OfferfindAllByMykeyOffer ,因为您的字段名为 mykey。

如文档中所述 https://docs.spring.io/spring-data/jpa/docs/2.1.0.RELEASE/reference/html/使用 List<Application> findAllByMykey_Offer(String jobTitle);优于List<Application> findAllByMykeyOffer(String jobTitle);

关于java - 如何在 JPA 存储库方法中使用部分组合键来获取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52679318/

相关文章:

java - 如何在 EmbeddedId 中强制执行 @Enumerated(EnumType.STRING)

java - 是否可以添加库项目的 JAR 文件并在另一个项目中使用其资源?

java - 按降序对数组中的特定索引进行排序

java - 将java类数据转成JSON格式?

java - 如何在 Spring Boot 中使用 Java 从 JSON 响应中提取特定部分?

java - 断言数组中的字符串之一包含子字符串

spring - 如何在 Spring Framework 中为 BasicDataSource 设置最大池大小或连接大小

java - 使用 Spring 注入(inject) TaskScheduler

java - 在 Spring Boot 2.1.1.RELEASE 中的 RestTemplate 中添加 Http header

spring-boot - 如何让我的 Spring Boot 微服务使用 HTTPS 运行?