亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將 80000 左右的大數據插入到 postgres 數據庫中,Java 失敗

將 80000 左右的大數據插入到 postgres 數據庫中,Java 失敗

慕工程0101907 2021-08-19 22:27:49
我有以下file.txt參考這篇文章。它可能包含多達 400,000 個條目,我需要將它們插入到數據庫中,但是對于大約 80000 到最大 100,000 的文件,該過程成功但如果超出則失敗。問題可能出在寫入數據庫的最后一個循環中,FILETYPE: STUDENTFORMATVERSION: 1.2 ACTION: REPLACEALLCOLUMNS: NAME,SURNAME,AGE,SEX"raj","jonson",17,"M""Rita","Sweety",17,"F"這是我的示例代碼//入口點public RestResponse provisionStudent(MultipartFormDataInput input) {    long processed = 0L;    HashMap<String, String> columnMaping = new HashMap<String, String>();    //mapping here as the column name is not same as in the database    columnMaping.put("NAME","name");    columnMaping.put("surname","s_name");    columnMaping.put("AGE","age");    columnMaping.put("SEX","mf");    try {        String lineRead;        List<Map<String, String>> listheader = new ArrayList<>();        Map<String, String> obj = new LinkedHashMap<>();        ArrayList<String> body = new ArrayList<String>();        InputStream result;        //checking if file contain data        if (input == null || input.getParts() == null || input.getParts().isEmpty()) {            throw new IllegalArgumentException("Multipart request is empty");        }        if (input.getParts().size() == 1) {            InputPart filePart = input.getParts().iterator().next();            result = filePart.getBody(InputStream.class, null);        } else {            result = input.getFormDataPart("file", InputStream.class, null);        }        BufferedReader httpResponseReader = new BufferedReader(new InputStreamReader(result));        // reading the header part into obj and the body part in array list body        while ((lineRead = httpResponseReader.readLine()) != null) {            if (lineRead.contains(":")) {                String[] headervalues = lineRead.replace(" ", "").split(":");                obj.put(headervalues[0], headervalues[1]);            } else {                if (lineRead.length() > 0) body.add(lineRead.replace(" ", ""));            }        }
查看完整描述

1 回答

?
素胚勾勒不出你

TA貢獻1827條經驗 獲得超9個贊

也許您在服務器端超時,請嘗試將 statement_timeout 設置得更高。您應該檢查許多超時選項。


查看完整回答
反對 回復 2021-08-19
  • 1 回答
  • 0 關注
  • 284 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號