يوفر Struts2 نوع نتيجة الدفق ، والذي يستخدم خصيصًا لدعم تنزيل الملفات. مطلوب خصائص 4 التالية لتحديد نتيجة تكوين نوع الدفق.
ContentType: حدد نوع الملف للملف الذي تم تنزيله
inputName: حدد دفق إدخال الإدخال للملف الذي تم تنزيله
ContentDisposition: حدد اسم الملف الذي تم تنزيله
المخزن المؤقت: حدد حجم المخزن المؤقت عند تنزيل الملف
مثال على ملف struts2:
1. الإجراء لمعالجة تنزيلات الملفات:
/** * الوصف: تنزيل ملف تحكم Struts2 * المؤلف: Eleven * التاريخ: 2018/1/24 10:39 */يمتد FileAction public Actionupport {// هذا المتغير العضو يتوافق مع قيمة الإدخال في struts.xml ، ويوفرها طريقة الحصول على طريقة الحصول على إدخال خاص ؛ // file download public string download () {// حدد موقع المورد الذي تم تنزيله وأرجع مسار سلسلة دفق الإدخال المقابل = "/web-inf/images/lib.zip" ؛ // استخدم getResourCeasStream () لتحويل الملف المحدد إلى Targetfile targetfile = servleTactionContext.getServletContext (). getResourCeasStream (path) ؛ العودة النجاح } // توفير طريقة الحصول على طريقة publicstream getTargetFile () {return targetFile ؛ }}لتنزيل ملف ، يجب أولاً الحصول على موارد الملف التي تم تنزيلها. هنا أضع الملف الذي تم تنزيله ضمن مسار الويب/الصور للمشروع. يمكنك القيام بذلك وفقًا لاحتياجاتك الخاصة ، ثم استخدام طريقة getResourCeasStream () التي توفرها ServletContext لإرجاع دفق الإدخال المقابل للملف المحدد.
2. تكوين Struts.xml
<؟ value = "false" /> <name name = "struts.devmode" value = "true" /> <package name = "default" namespace = " /" extends = "struts-default"> <action name = "file_*" method = "{1}" <! name = "contentType"> application/zip </param> <!-image/jpg-> <!-حدد اسم inputStream الذي يرجع الملف الذي تم تنزيله في الإجراء-> <param name = "inputName"> targetfile </param> <param name = "contentDisposition"> filename = "aaa.zip" name = "inputName"> targetfile </param> <param name = "contentDisposition"> filename = "aaa.zip" </param> <!-حدد حجم المخزن المؤقت للملف الذي تم تنزيله-> <param name = "BufferSize"> 4096 </parar>أدخل مسار الوصول لتنزيل الملف المقابل في شريط عنوان المتصفح ، مثل http: // localhost: 8080/demo/file_download لتنزيل الملف. /
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.