我在一个Spring Boot应用程序中使用Hibernate。我正在为我的所有模型对象创建一个新的CrudRepository,以执行基本的CRUD任务。它们看起来像这样:
@Repository
public interface FoobarCrudRepo extends CrudRepository<Foobar, Long> {
}
但是我总是需要做一些额外的事情,比如使用不等式进行自定义搜索查询等。我会按照以下模式进行操作:
@Repository
public class FoobarDao {
@PersistenceContext
EntityManager em;
public List<Foobar> findFoobarsByDate(Date date) {
String sql = "select fb from Foobar fb where createdDate > :date";
...
return query.getResultList();
}
}
我的问题是,我能把这两个概念合并到一个类中吗?我尝试将它变成一个抽象类,就像这样:
我的问题是,是否可以将这两个概念合并为一个类?我尝试将其制作为抽象类,如下所示:
@Repository
public abstract class FoobarCrudRepo extends CrudRepository<Foobar, Long> {
@PersistenceContext
EntityManager em;
public List<Foobar> findFoobarsByDate(Date date) {
String sql = "select fb from Foobar fb where createdDate > :date";
...
return query.getResultList();
}
}
然而,Spring没有为它创建一个bean。
我该如何实现这个呢?
谢谢!