与csv文件比较几秒后停止 - 没有错误

时间:2015-08-15 12:46:57

标签: java

我想从CSV文件中读取每一行,并将它们与存储在Oracle中的数据库进行比较。因此,用户可以上传csv文件,文件中的每一行都应该用我的数据库控制,如果有一条记录具有相同的内容,则该记录应存储在列表中。

所以我的上传效果很好,比较也开始了,但几秒钟后我的IDE就停止了工作,没有任何错误或类似的错误。我还将堆空间增加到1024M,但仍然遇到同样的问题。

这是我的代码:

            InputStream input = event.getUploadedFile().getInputStream(); 
            BufferedReader in = new BufferedReader(new   InputStreamReader(input));
            String line = null;

            Query csvVergleich = em.createQuery("SELECT c.vorname FROM CSV c WHERE  c.nachname = :nachname AND c.geburtsdatum = :geburtsdatum");

            long davor = System.currentTimeMillis();
            StringBuffer buffer = new StringBuffer();
            List<String> listeCsv;
            int nummer = 0;
            while((line = in.readLine()) != null)
            {

                String[] zeile = line.split(";");

                //csvVergleich.setParameter("vorname", zeile[1]);
                csvVergleich.setParameter("nachname", zeile[2]);
                csvVergleich.setParameter("geburtsdatum", zeile[4]);

                listeCsv = csvVergleich.getResultList();

                if(listeCsv.size() > 0)
                {
                    nummer++;
                    System.out.println("Gefunden: ");
                    System.out.println(listeCsv.toString());
                }
                else{
                    System.out.println("Keine Übereinstimmung");
                }

            }

            input.close();
            long danach = System.currentTimeMillis();
            System.out.println("Gesamtdauer: " + (danach - davor / 1000) + ".sek");
            System.out.println(nummer);
 [...]

所以我从来没有在最后看到两个System.out

0 个答案:

没有答案