java - Spring Boot Stram API 大数据
问题描述
我将 JPA 与返回大约 13k 寄存器的本机查询一起使用。我想使用 Java 8 中的 Stream API,但结果没有出现。
我无法分页,因为结果将填充组合框
我的存储库发送我添加了 @Transactional(readOnly = true) 以使其工作的流
@Query(value = "select * from mytable", native = true)
Stream<MyTable> getTableStream()
@Transactional(readOnly = true)
public Stream<MyTable> getTableStream() {
return repository.getTableStream()
}
@GetMapping(value = "/table", produces = MediaType.APPLICATION_STREAM_JSON_VALUE)
@Transactional(readOnly = true)
public ResponseEntity<Stream<MyTable>> getMailingClient() {
Stream<MyTable> body = service.getTableStream();
return ResponseEntity.ok(body);
}
我找到的有关流的所有链接和资源都没有显示使用 Spring REST API 实现返回 JSON。
我的前端是 Angular 6,最近我得到的是一个没有结果的自定义对象
解决方案
将所有 13k 条记录加载到组合框中听起来是一个非常缓慢的解决方案。我建议实施基于like
查询的搜索。像这样的东西:
@Query("SELECT * FROM mytable WHERE name like ':name%'")
Stream<MyTable> getTableStream(@Param("name") String name);
但是如果你真的想加载所有的记录,你可以使用java.util.Collection
orjava.util.List
来代替流。
Collection<MyTable> getTableStream();
推荐阅读
- php - 错误号:使用 Codeigniter 3 删除数据时出现 1064
- jquery - Bootstrap 图像响应式握把
- mysql - 将数据类型从 int 更改为 time 导致现有值出错
- loops - 在emu8086中从1打印到<用户输入
- python - 二维点的椭圆精度
- python - 如何将 for 循环的输出保存到 python 图像的数组中?
- powershell - 使用 Windows 任务计划程序运行 powershell 脚本时未生成日志文件
- visual-studio-code - VSCode - 用于代码建议的 auto_prepend_file
- c# - 将 Excel 文件保存到用户桌面时如何解决问题?
- python - 在 SymPy 中计算符号表达式并在 Julia 中将它们转换为数字