我目前正在使用 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 列检索文档摘要数据?
谢谢。
最佳答案
我认为这不是做到这一点的方法。
通过这两种方式,您可以了解在这种情况下如何调用以及调用什么列。
此外,在有关错误方法的部分中,您还会看到:
- 创建一个扩展 Repository 接口(interface)的基本接口(interface)并 将常用方法添加到该接口(interface)。
- 创建扩展我们的基本接口(interface)的实际存储库接口(interface)。
关于java - 在 Spring Boot 中使用 CrudRepository 检索 DiscriminatorColumn,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43900909/