อธิบายขั้นตอนสำหรับการอ้างอิง
การตระเตรียม:
คุณต้องใส่ไฟล์ Jakarta Commons Fileupload และ Jakarta Commons IO แพ็คเกจใน LIB
กระเป๋าของฉันนี่คือ:
Commons-Fileupload -1.1.1.jar
Commons-io-1.3.2.jar
จากนั้นกำหนดค่า multipartresolver ใน Spring-servlet.xml หากการอัปโหลดไม่ได้รับการกำหนดค่าอย่างถูกต้องมันจะใช้งานยาก
<bean id = "MultipartResolver"> <property name = "MaxUploadSize"> <dange> 100000 </alue> </porement> <property name = "DefaultEncoding"> <value> UTF-8 </alue>
ถัดไปคือหน้า:
ให้ความสนใจกับการเขียนแบบฟอร์มและการเขียนส่วนประกอบอัปโหลดไฟล์
<form action = "uploadPosDetailFile.html" method = "post" enctype = "multipart/form-data"> <div> <p> <pan> <อินพุต ID = "startDatetxt" ชื่อ = "startDatetxt"/> </span> รูปแบบ: mm/dd/yyyy, เช่น: 01/01/2014) </span> </label> </p> <p> <pan> <อินพุต id = "enddatetxt" name = "enddatetxt"/> </span> <dable> รูปแบบ: mm/dd/yyyy, เช่น: 12/25/2014) </span> </label> </p> <p> <pan> <อินพุต type = "file" name = "UploadFilectrl"/> </span> value = "ส่ง"/> </div> </form>
จากนั้นเขียนรหัสการประมวลผลในคอนโทรลเลอร์ให้ความสนใจกับการติดต่อระหว่างพารามิเตอร์และการควบคุมหน้า:
@RequestMapping (value = "/uploadPosDetailFile") สตริงสาธารณะ uploadPosDetailFile (@requestparam ("startDatetxt") สตริง startDatetxt, @requestparam ( ขอตอบกลับ httpservletResponse) {ลอง {system.out.println ("@@@@@@@@@@ 1.StartDatetxt ="+startDatetxt); system.out.println ("@@@@@@@@@@@erenddatetxt ="+enddatetxt); system.out.println (" ชื่อไฟล์ของไฟล์ที่อัปโหลดถ้า (file.isempty () == false) {inputStream คือ = file.getInputStream (); inputStreamReader ISR = ใหม่ inputStreamReader (IS); bufferedReader br = new BufferedReader (ISR); String s; ในขณะที่ ((s = br.readline ())! = null) {system.out.println (s);} br.close (); isr.close (); is.close (); is.close ();} return "/pages/posdetail/uploadposdetailresult/index. {E.PrintStackTrace (); logger.error (e); request.setAttribute ("ข้อผิดพลาด", e.getClass ()); request.setAttribute ("เหตุผล", e.getMessage ()); stackTraceElement [] arr = e.getStackTrace ()