[英]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.