تصف هذه المقالة طريقة التنفيذ لتحميل شريط تقدم الملف في Java. شاركه للرجوع إليه ، على النحو التالي:
الشيء بسيط للغاية ، يستخدم بشكل أساسي مشابك filepload ، والذي يحتوي على واجهة ProgressListener ، والتي يمكن أن تحقق تحديثًا في الوقت الفعلي لحجم الملفات التي تم تحميلها. ماذا يمكنني أن أقول مع هذا؟
ها هو الرمز:
package lc.progress ؛ import javax.servlet.http.httpservletrequest ؛ import javax.servlet.http.httpsession ؛ import lc.progress.vo.filePloadStaRENTERSENTERSERSENTERSIGNESTINGERTINGERSTINGENTERS PRIVAGENGENT. public myProgressListener (httpservletrequest req) {session = req.getSession () ؛ fileUploadStatus status = جديد fileUploadStatus () ؛ Session.setAttribute ("الحالة" ، الحالة) ؛ } / * pbytesread عدد البتات التي تقرأها الملفات حتى الآن * حجم ملف pcontentLength * pitems كم عدد الملفات التي يتم قراءتها حاليًا * فقط احفظ حالة تحميل الملف في الجلسة في الوقت الحقيقي (هنا أستخدم فئة fileUploadStatus to to-generated) * / public void تحديث (pbytesread long pcontentlenge ، fileUploadStatus status = (fileUploadStatus) session.getAttribute ("الحالة") ؛ الحالة. الحالة. status.setPitems (pitems) ؛ }}ثم أضف مثل هذا الرمز إلى servlet أو الإجراء ، ويمكنك إضافة قائمة التقدم المخصصة إلى
MyProgressListener getBarListener = جديد myProgressListener (req) ؛ servletfileupload upload = new servletfileupload (Factory) ؛ Upload.SetProgressListener (getBarListener) ؛
أخيرًا ، يمكنني استخدام JS للوصول بشكل مستمر إلى Servlet آخر للعودة إلى حالة التحميل في الوقت الفعلي. نظرًا لقيود المساحة ، لن أعد رمزًا بعد الآن. يمكن للقراء المهتمين تنزيله بمفردهم.
انقر هنا لتنزيل رمز المثال الكامل.
آمل أن يكون هذا المقال مفيدًا لبرمجة Java للجميع.