في جافا, كيفية تحميل حيوي الموارد حزم في تطبيقات الويب ؟

StackOverflow https://stackoverflow.com/questions/156586

  •  03-07-2019
  •  | 
  •  

سؤال

نحن نستخدم fmt:setBundle لتحميل الموارد حزمة من قاعدة البيانات (نحن مدد ResourceBundle الدرجة للقيام بذلك).عندما نقوم بتعديل قيمة في قاعدة البيانات لدينا إلى تحديث ملقم ويب لعرض قيمة جديدة على شبكة الإنترنت التطبيق.

هل هناك أي طريقة بسيطة لاستخدام القيمة الجديدة دون إعادة تشغيل ملقم ويب ?

(نحن لا لا تريد أن تبدو دائما قيمة من قاعدة البيانات ولكن نود أن يبطل ذاكرة التخزين المؤقت ، على سبيل المثال عن طريق الاتصال الخاصة 'admin' URL)

تحرير :نحن نستخدم JDK 1.4 لذا يفضل حلا على هذا الإصدار.:)

هل كانت مفيدة؟

المحلول

كما أشار آخرون في التعليقات ، قد ترغب في النظر في الربيع خاصة ReloadableResourceBundleMessageSource.

نصائح أخرى

إذا كنت تستخدم JDK 1.6 يمكنك استخدام الأساليب رد getTimeToLive() و needsReload() في ResourceBundle.التحكم للتحكم في ما إذا كان حزمة ذاكرة التخزين المؤقت يجب أن تكون محملة قيم جديدة من قاعدة البيانات.

أولا يمكنك إنشاء فئة التي تمتد من ReloadableResourceBundleMessageSource إلى كشف الطبقة الداخلية المحمية طريقة تسمى getProperties.هذا الأسلوب بإرجاع المتزامنة خريطة PropertiesHolder الكائن.ثانيا يجب تكوين الفول من أن تمتد الطبقة في تكوين ويب الدرجة.الآن كنت قادرا على استخدام messageSource في الخدمة أو طبقة رجال الأعمال.هنا هو الإشارة الرابط تكوين reloadable مصدر الرسالة حزمة

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top