سؤال

أقوم بتجربة الفواضع وجافا وأرغب في تخزين كل قواعدي في قاعدة بيانات فقط. إذا فهمت توثيق بشكل صحيح، أحتاج إلى الحصول على "Main.xls" واحد لتخزين إعدادات البيئة. الآن السؤال: هل هناك طريقة للتحايل تماما هذا ملف .xls المادي واحد؟ أفضل حالة ستكون، إذا استطعت فقط استدعاء شيء مثل

defineOpenRulesDatabase();    
OpenRulesEngine engine = new OpenRulesEngine("db:myFile.xls");
engine.run();

حيث يحدد الطريقة DefineOpenRulesDatabase () جميع الإعدادات التي يتم تعريفها في ملف DB.Properties المذكور في الوثائق.

أي فكرة على هذا؟

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

المحلول

نعم. وفقا للوثائق, ، يمكنك تمرير أي عنوان URL الذي يدعمه Java (أي أي شيء URL.openStream() سوف تعيد شيئا مفيدا).

لذلك يمكنك ببساطة تضمين خادم ويب Jetty. في طلبك، قم بإنشاء Servlet الذي يقوم بإرجاع الملف ثم اتصل به OpenRulesEngine() مع عنوان url من servlet.

أو يمكنك تنزيل الملف من DB واستخدام File.createTempFile() لإنشاء ملف مؤقت لإعداد محرك القواعد.

أو يمكنك تقديم خطأ ضد المشروع واطلب منشئ آخر يسمح لك بالمرور InputStream.

عدل] أعتقد أنك رأيت بالفعل هذا المستند التي تشرح كيفية وضع القواعد في قاعدة بيانات. من ما أراه، من غير الممكن إنشاء محرك القاعدة دون ملف Main.xls موجود على الأقل في Classpath.

ولكن هذا الملف لا يجب أن يحتوي على الكثير:

القواعد / Main / Main.xls الملف الرئيسي لمحرك القواعد لتبدأ به. أنه يحتوي فقط على جدول البيئة

لذلك يمكنك ببساطة وضع ملف ثابت في ClassPath وحمل جميع القواعد من DB.

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