我正在尝试使用 SeedStack Java 代码获取浮点列的最大值,而我正在使用种子堆栈存储库。但我不明白该怎么做。作为存储库,不要调用 max 函数。它具有唯一的计数功能。我已经使用规范应用了过滤器。但是被Max函数卡住了。谁能帮忙?
由于限制,我无法共享代码。
我正在尝试使用 SeedStack Java 代码获取浮点列的最大值,而我正在使用种子堆栈存储库。但我不明白该怎么做。作为存储库,不要调用 max 函数。它具有唯一的计数功能。我已经使用规范应用了过滤器。但是被Max函数卡住了。谁能帮忙?
由于限制,我无法共享代码。
存储库抽象允许您使用类似集合的外观来管理聚合持久性,但泛型方法只能返回聚合类型的对象。
在您的情况下进行数据聚合时,您不会返回聚合,而是返回单个列和聚合结果。这与通用存储库方法和规范对象不兼容。
要实现您想要的,您必须定义一个自定义存储库方法。在自定义界面中定义它:
public interface ProductRepository extends Repository<Product, Long> {
int getMaximumProductPrice();
}
然后实现它:
public class ProductJpaRepository
extends BaseJpaRepository<Product, Long>
implements ProductRepository {
@Override
public int getMaximumProductPrice() {
// implement query using getEntityManager()
}
}
现在你直接用你自己的接口注入你的存储库:
public class SomeClass {
@Inject
private SomeRepository someRepository;
}
上面的示例非常简单,但请注意,您还可以返回更复杂的值,例如:
Object
保存任意值的数组,Product
或列表,Product
如果您进行连接。