"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف يمكنني إدارة إعدادات اتصال قاعدة البيانات ديناميكيًا في تطبيق Spring Boot الخاص بي باستخدام متغيرات البيئة أو ملفات التعريف؟

كيف يمكنني إدارة إعدادات اتصال قاعدة البيانات ديناميكيًا في تطبيق Spring Boot الخاص بي باستخدام متغيرات البيئة أو ملفات التعريف؟

تم النشر بتاريخ 2024-12-22
تصفح:312

How Can I Dynamically Manage Database Connection Settings in My Spring Boot Application Using Environment Variables or Profiles?

استخدام متغيرات البيئة في Spring Boot Application.properties

في تطبيقات Spring Boot، قد تكون هناك مواقف تحتاج فيها إلى ضبط إعدادات اتصال قاعدة البيانات ديناميكية عبر بيئات مختلفة، مثل المحلية والاختبار والإنتاج. أحد الأساليب هو استخدام متغيرات البيئة وإدراجها في ملف application.properties.

لإعداد متغيرات البيئة لبيئات مختلفة، اتبع الخطوات التالية:

  • إنشاء نظام متغيرات البيئة: قم بإنشاء متغيرات بيئة النظام على جهازك المحلي وفي Jenkins VM بنفس الأسماء التي يستخدمها OpenShift. قم بتعيين القيم المناسبة لهذه المتغيرات لكل بيئة.
  • تحويل متغيرات البيئة إلى متغيرات Java: استخدم System.getenv() للوصول إلى متغيرات البيئة هذه وتحويلها إلى متغيرات Java مثل كلمة المرور واسم المستخدم و sqlURL وsqlPort.
  • تضمين متغيرات البيئة في application.properties: لاستخدام هذه المتغيرات في ملف application.properties الخاص بك، قم بتضمينها على النحو التالي:
spring.datasource.url = ${OPENSHIFT_MYSQL_DB_HOST}:${OPENSHIFT_MYSQL_DB_PORT}/"nameofDB"
spring.datasource.username = ${OPENSHIFT_MYSQL_DB_USERNAME}
spring.datasource.password = ${OPENSHIFT_MYSQL_DB_PASSWORD}

ومع ذلك، فإن الطريقة الأكثر تفضيلاً هي استخدام آلية ملف تعريف Spring وإنشاء ملفات خصائص تطبيق منفصلة لكل بيئة. باستخدام خاصية Spring.profiles.active، يمكنك تحديد ملف التعريف الذي يجب أن يكون نشطًا، وسيقوم Spring تلقائيًا بتحميل ملف الخاصية المقابل.

وهذا يلغي الحاجة إلى تحويلات صريحة لمتغيرات البيئة ويدير ملفات التكوين بشكل أكثر فعالية.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3