[英]Using CrudRepository to retrieve a DiscriminatorColumn in Spring Boot
我目前正在使用Spring Boot進行項目。
我正在使用的表之一正在使用DiscriminatorColumn,如下所示:
@Entity
@Table(name = "document_summary", uniqueConstraints = @UniqueConstraint(columnNames={"document_name", "document_type"}))
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = "document_type", discriminatorType = DiscriminatorType.STRING)
public class DocumentSummary {
...
//no document type field
...
}
如您所見,即使表上的列稱為“ document_type”,也未明確將其創建為單獨的字段。
通常,我只需要創建一個這樣的存儲庫即可從數據庫檢索文檔摘要:
public interface DocumentSummaryRepository extends CrudRepository<DocumentSummary, Long> {
DocumentSummary findByDocumentType(String documentType);
}
在這種情況下,是否有一種方法基於列document_type來檢索“文檔摘要”數據?
謝謝。
我不認為這是這樣做的方法。
看一下本教程: https : //www.petrikainulainen.net/programming/spring-framework/spring-data-jpa-tutorial-part-two-crud/
通過兩種方式,您可以看到在這種情況下如何以及在哪一列調用。
此外,在有關錯誤的執行方式的部分中,您還將看到:
嘗試在存儲庫界面中更改findBy
方法:
public interface DocumentSummaryRepository extends CrudRepository<DocumentSummary, Long> {
DocumentSummary findByDocument__type(String documentType);
}
在這里使用雙下划線,因為Spring將其視為保留字符: doc
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.