java - Spring JpaSpecificationExecutor 在第一次查询中太慢了
问题描述
我有这个存储库示例:
default Page<Person> findAllPerson(PersonFilter personFilter, Pageable pageable){
return findAll(new PersonSpecification(personFilter), pageable);
}
这是规范代码:
@Override
public Predicate toPredicate(Root<Person> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) {
List<Predicate> predicates = new ArrayList<>();
if(filter.getPersonId() != null) {
predicates.add(criteriaBuilder.equal(root.get("personId"), filter.getPersonId()));
}
当应用程序启动时,对端点的第一个请求需要 5 到 7 秒,但接下来的所有请求都需要 300 到 500 毫秒。应用程序是否有可能在启动时在数据库中运行查询,或者当应用程序启动时是否有可能在数据库中运行查询以跳过第一个慢速请求?也许一些 JpaSpecificationExecutor 配置...
解决方案
推荐阅读
- sql - 即使表没有更新和删除权限,是否可以回滚表?
- java - Jsoup在带有许多标签的标签后选择文本
- android - 属性fab Attached not found
- json - 如何将 DBIx::Class::ResultSet 转换为 JSON
- windows - 自定义凭据在 Windows 10 Virtual Box VM 中不起作用
- javascript - 使用onkeyup javascript时如何再次停止和启动ajax提交表单?
- newrelic - 使用新的 Relic Java 代理将 Spring Boot 应用程序部署到 Swisscom Cloud
- typescript - 使用 VS Code 将文本资源导入打字稿
- python - sklearn 中的线性判别分析无法减小特征大小
- javascript - 如何在 Elementor 中添加灯箱弹出窗口