ปัญหา: ระบบต้องการการนำเข้าข้อมูล Excel 400,000 และเซิร์ฟเวอร์มีหน่วยความจำล้นโดยใช้วิธี POI
วิธีแก้ปัญหา: เนื่องจาก HSSFWORKBOOK Workbook = ใหม่ HSSFWORKBOOK (PATH) โหลด Excel เข้าสู่หน่วยความจำในครั้งเดียวส่งผลให้หน่วยความจำไม่เพียงพอ
ดังนั้นรูปแบบการอ่าน CSV จึงถูกนำมาใช้ เนื่องจากข้อมูลของ CSV ถูกสร้างขึ้นใน X1, X2, X3 จึงคล้ายกับการอ่านเอกสาร TXT
BufferedReader ส่วนตัว; / *** รายการไฟล์ Execution*/ Public Void Execute () {ลอง {ถ้า (! path.endswith (". csv")) {logger.info ("----- ไฟล์นี้ไม่ใช่ไฟล์ CSV โปรดอัปโหลดรูปแบบไฟล์ที่ถูกต้อง -------"); กลับ ; } Long StartTime = System.currentTimeMillis (); logger.info ("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- time = " + (endtime - starttime));} catch (Exception e) {E.printStackTrace ();}} / ** * อ่าน csv และกระบวนการข้อมูล * @param พา ธ * @throws ยกเว้น * / โมฆะส่วนตัว readcsv (เส้นทางสตริง) "GBK"); }}}} ในที่สุด {if (breader! = null) {breader.close ();}}}}}}บทความข้างต้นแก้ปัญหาของหน่วยความจำล้นในข้อมูลจำนวนมากที่นำเข้าจาก Java ถึง Excel เป็นเนื้อหาทั้งหมดที่ฉันแบ่งปันกับคุณ ฉันหวังว่ามันจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น