spring - داتاسورسز متعددة في مستودع التمهيد الربيع الحواشي واجهة




hibernate spring-boot (2)

هنا هو عينة لطيفة يمكنك استخدامها: ديناميكية-داتاسورس التوجيه مع الربيع . داخل يمكنك العثور على أبستراكتروتينغداتاسورس + اعتراضية لتعليق توضيحي مخصص أسلاك طريقة الخدمة إلى قاعدة بيانات المطلوبة. ومع ذلك يمكنك فقط استخدام مفتاح مصدر البيانات بشكل صريح.

ويستند طلبي على التمهيد الربيع، الإسبات، الخلية باستخدام الربيع جبا البيانات لغرزة لهم.

استخدام القضية هو استخدام الرقيق عقدة دب للقيام بعمليات قراءة ثقيلة وذلك لتجنب كل حركة يجري تقديمها من عقدة ميسكل الرئيسي. إحدى طرق تحقيق ذلك هي أن يكون لدى العديد من مديري الكيانات إشارة إلى مصادر بيانات منفصلة (واحدة لإتقان وأخرى لعقدة الرقيق). وقد تم شرح هذه الطريقة بشكل جيد جدا في أسفل الأسئلة سو والمدونات.

الربيع التمهيد، الربيع البيانات جبا مع داتاسورسز متعددة

https://scattercode.co.uk/2016/01/05/multiple-databases-with-spring-boot-and-spring-data-jpa/

حيث أنا عالقة هو أن نفهم إذا كان هناك طريقة يمكنني حقن مديري كيانات مختلفة لحالات الاستخدام المختلفة في بلدي مستودع المشروح واجهة.

الطريقة الوحيدة التي أرى أنه يمكن القيام به هو توسيع مستودع مع تنفيذ مخصص الذي يعطي يستخدم مدير كيان مخصص مشروح مع ريستانسيونكونتيكست ذات الصلة مثل أدناه.

public interface CustomerRepository extends JpaRepository<Customer, Integer>, MyCustomCustomerRepository{
}

public class MyCustomCustomerRepositoryImpl implements MyCustomCustomerRepository {

        @PersistenceContext(unitName = "entityManagerFactoryTwo")
        EntityManager entityManager;
}

أود تجنب إجراء هذا التنفيذ المخصص. أي مساعدة حول حل هذه الحالة الاستخدام (الذي أشعر أن يكون شائعا جدا) سيكون موضع تقدير.

ملاحظة: الكيانات هي نفسها في كل من قواعد البيانات بحيث إعطاء حزم منفصلة لمسح الكيان وربما لا تعمل الحلول المماثلة.


وفيما يلي طلب سحب يظهر الفرق وكيف جعلت العمل مع معظم تكوينات الشرح مدفوعة بدلا من شمل. لأنه يقوم على الجواب cra6 أعلاه. أي باستخدام القدرة روتينغداتاسورس الربيع.

https://github.com/himanshuvirmani/rest-webservice-sample/pull/1/files





spring-data-jpa