[英]Data in not inserted using SQL query
我想創建一個 Java 程序,它從 txt 文件中讀取行並使用 SQL 查詢將它們一一插入:
Stream<String> stream = Files.lines(Paths.get("C:\\in_progress\\test.txt"), StandardCharsets.UTF_8);
stream.forEach(System.out::println);
List<String> result = stream.collect(Collectors.toList());
for(String list : result)
{
System.out.println(list);
Thread.sleep(1000);
ProcessedWords obj = ProcessedWords.builder()
.keyword(list)
.createdAt(LocalDateTime.now())
.build();
processedWordsService.save(obj);
}
}
我看到打印的行,但沒有生成 SQL 查詢。 你知道我可能錯在哪里嗎?
流已被
stream.forEach(System.out::println);
collect
操作沒有實際意義。 流已被使用。 此時您需要創建一個新流。
例如:在下面,對流的第二個操作將拋出異常( Exception in thread "main" java.lang.IllegalStateException: stream has already been operated upon or closed
):
List<Integer> intList = Lists.newArrayList(1, 2, 3, 4, 5, 6, 7, 8);
Stream<Integer> integerStream = intList.stream()
integerStream.forEach(System.out::println);
var v = integerStream.collect(Collectors.toList()); // <-- throws exception
您確定,您沒有在日志中看到此異常嗎?
https://docs.oracle.com/javase/8/docs/api/java/util/stream/Stream.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.