我在spring-boot中从1.5升级到2.1,并将CRUDRepository方法之一的save()更改为saveAll,随着返回类型的改变。有人可以让我知道如何返回saveAll而不是save。
我试图创建一个将save()扩展到saveAll()的包装器。
答案 0 :(得分:1)
类似这样的东西
metrics
然后从新的BaseJpaRepository接口派生Repository类(-es)
@NoRepositoryBean
public interface BaseJpaRepository<T, ID extends Serializable> extends JpaRepository<T, ID> {
<S extends T> List<S> save(Iterable<S> entities);
}
@NoRepositoryBean
public class BaseJpaRepositoryImpl<T, ID extends Serializable> extends SimpleJpaRepository<T, ID> implements BaseJpaRepository<T, ID> {
private final EntityManager em;
public BaseJpaRepositoryImpl(JpaEntityInformation<T, ID> entityInformation, EntityManager em) {
super(entityInformation, em);
this.em = em;
}
@Override
public <S extends T> List<S> save(Iterable<S> entities) {
return saveAll(entities);
}
}
最后是配置类
@Repository
public interface MyEntityRepository extends BaseJpaRepository<MyEntity, Long> {
}