jpaRepository 的繼承

正在學習spring boot。

請先看以下代碼:

public abstract class Thing
{
......
}

public class Person extends Thing
{
......
}

public interface Thing_Repository extends JpaRepository
{ }

public interface Person_Repository extends Thing_Repository
{ }

但是以上黑體“Thing_Repository”下有紅划綫報錯“The type Thing_Repository is not generic; it cannot be parameterized with arguments ”

我希望做到當運行以下代碼:

Thing_Repository.save(Thing)

如果Thing是Person的話,它會自動調:

Person_Repository.save(Person)

可以做到嗎?

Thing_Repository不是泛型类,你是不是加上尖括号了。这里代码贴得看不清楚。

如果Thing是Person的話,它會自動調:
Person_Repository.save(Person)

这个本来就是这样

我的理解是不能实现的:如果不指定entity的类型,japrepository无法判断往那个表中写数据。

@NoRepositoryBean
public interface JpaRepository<T, ID> extends PagingAndSortingRepository<T, ID>, QueryByExampleExecutor<T> 

JpaRepository是泛型类,需要你绑定类型才能使用。

public interface Thing_Repository extends JpaRepository<Thing,Long> 

所以推荐这种使用方法。

代码不是很全,建议看下
Spring Data JPA-自定义Repository实现:
https://www.cnblogs.com/xiang--liu/p/9710244.html