Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring boot-Jpa-SaveAll(Entity)数据库中缺少实体_Java_Spring_Hibernate_Spring Data Jpa - Fatal编程技术网

Java Spring boot-Jpa-SaveAll(Entity)数据库中缺少实体

Java Spring boot-Jpa-SaveAll(Entity)数据库中缺少实体,java,spring,hibernate,spring-data-jpa,Java,Spring,Hibernate,Spring Data Jpa,当我试图保存21300个实体的列表时,我遇到了一个问题,但是在数据库中只保存了[SELECT COUNTid=]10506 控制台输出显示准备保存的列表的大小是正确的,因此代码是正确的。例如,如果我使用freq==30使它只循环一次,那么它工作得很好,因此当它循环几次时,它似乎以某种方式与for each循环相关联。失踪的实体在人口中有些分散 你知道为什么会有这种行为吗 public void loadTickAll(int conid) { System.out.println("&g

当我试图保存21300个实体的列表时,我遇到了一个问题,但是在数据库中只保存了[SELECT COUNTid=]10506

控制台输出显示准备保存的列表的大小是正确的,因此代码是正确的。例如,如果我使用freq==30使它只循环一次,那么它工作得很好,因此当它循环几次时,它似乎以某种方式与for each循环相关联。失踪的实体在人口中有些分散

你知道为什么会有这种行为吗

public void loadTickAll(int conid) {
    System.out.println(">>>> MERGING <<<<<< Querying ticks for " + conid);
    List<CandleTick> candlesHisto = histoCandleTickRepo.findByConidAll(conid, LocalDate.parse("2016-11-01"));
    List<CandleTick> candlesLive = new ArrayList<>();

    List<CandleTick> candles = Stream.of(candlesHisto, candlesLive).flatMap(Collection::stream)
            .collect(Collectors.toList());

     freqList.forEach((freq) -> {
     if(freq>=30) {
     System.out.println("Working on freq " + freq);

     FlowMerger flowMerger = new FlowMerger(freq, contracts.get(conid));
     List<CandleMerge> flow = flowMerger.createFlow(new ArrayList<>(candles));
     Collections.reverse(flow);

     System.out.println("Start saving " + freq + " - " + flow.size());
     histoCandleMergeRepo.saveAll(flow);

     System.out.println(freq + "/" + conid + " has been delivered and saved");
     }
     });

}

我设法追查到了这个问题。我展示了SQL并注意到我正在更新而不是插入

我的实体缺少一些注释

@GeneratedValue(generator = "merge_id_seq")
@SequenceGenerator(name = "candleid_generator_generator", sequenceName = "merge_id_seq", initialValue = 1)
@Id
private int id;

如果这解决了您的问题,请点击星号接受答案
@GeneratedValue(generator = "merge_id_seq")
@SequenceGenerator(name = "candleid_generator_generator", sequenceName = "merge_id_seq", initialValue = 1)
@Id
private int id;