खोज…


देव और अलग-अलग डेटा स्रोत का उपयोग करके उत्पादन करते हैं

सफलतापूर्वक स्प्रिंग-बूट एप्लिकेशन सेटअप करने के बाद सभी कॉन्फ़िगरेशन को एक application.properties फ़ाइल में संभाला जाता है। आप फ़ाइल को src/main/resources/ पर पाएंगे।

आम तौर पर आवेदन के पीछे एक डेटाबेस होना आवश्यक है। विकास के लिए अपनी अच्छी का एक सेटअप करने के लिए dev और एक prod वातावरण। कई application.properties फ़ाइलों का उपयोग करके आप बता सकते हैं कि स्प्रिंग-बूट किस अनुप्रयोग के साथ शुरू होना चाहिए।

एक अच्छा उदाहरण दो डेटाबेस को कॉन्फ़िगर करना है। dev लिए एक और productive लिए एक।

dev वातावरण के लिए आप H2 जैसे इन-मेमोरी डेटाबेस का उपयोग कर सकते हैं। src/main/resources/ निर्देशिका में एक नई फ़ाइल बनाएँ जिसका नाम application-dev.properties । फ़ाइल के अंदर इन-मेमोरी डेटाबेस का कॉन्फ़िगरेशन है:

spring.datasource.url=jdbc:h2:mem:test
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=

prod माहौल के लिए हम उदाहरण के लिए "वास्तविक" डेटाबेस से postgreSQLsrc/main/resources/ निर्देशिका में एक नई फ़ाइल बनाएँ जिसका नाम application-prod.properties । फ़ाइल के अंदर postgreSQL डेटाबेस का कॉन्फ़िगरेशन है:

spring.datasource.url= jdbc:postgresql://localhost:5432/yourDB
spring.datasource.username=postgres
spring.datasource.password=secret

आपके डिफ़ॉल्ट application.properties आप फ़ाइल को अब सेट कर पा रहे हैं कि कौन सी प्रोफ़ाइल सक्रिय है और इसका उपयोग स्प्रिंग-बूट द्वारा किया जाता है। बस एक विशेषता को अंदर सेट करें:

spring.profiles.active=dev

या

spring.profiles.active=prod

महत्वपूर्ण है कि भाग के बाद है - में application-dev.properties फ़ाइल के पहचानकर्ता है।

अब आप बस पहचानकर्ता को बदलकर विकसित या उत्पादन मोड में स्प्रिंग-बूट एप्लिकेशन शुरू करने में सक्षम हैं। इन-मेमोरी डेटाबेस स्टार्टअप या "वास्तविक" डेटाबेस से कनेक्शन होगा। यकीन है कि कई संपत्ति फ़ाइलों के लिए बहुत अधिक उपयोग के मामले हैं।

स्वचालित रूप से एप्लिकेशन (मावेन) बनाकर सही स्प्रिंग-प्रोफ़ाइल सेट करें

विभिन्न वातावरणों के लिए कई गुण फाइलें बनाकर या मामलों का उपयोग करते हुए, कभी-कभी इसे सक्रिय करने के लिए मुश्किल होता है। active.profile मान को दाईं ओर बदलना। लेकिन active.profile maven-profiles का उपयोग करके एप्लिकेशन का निर्माण करते समय application.properties में active.profile सेट करने का एक तरीका है।

मान लीजिए कि हमारे आवेदन में तीन वातावरण संपत्ति फाइलें हैं:

application-dev.properties :

spring.profiles.active=dev
server.port=8081

application-test.properties :

spring.profiles.active=test
server.port=8082

application-prod.properties

spring.profiles.active=prod
server.port=8083

वे तीन फाइलें केवल पोर्ट और सक्रिय प्रोफ़ाइल नाम में भिन्न हैं।

मुख्य application.properties फाइल में हम मावेन चर का उपयोग करके अपनी स्प्रिंग प्रोफाइल सेट करते हैं:

application.properties

spring.profiles.active=@profileActive@

उसके बाद हमें बस अपने pom.xml में मावेन प्रोफाइल को जोड़ना होगा हम तीनों वातावरणों के लिए प्रोफाइल सेट करेंगे:

 <profiles>
        <profile>
            <id>dev</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <build.profile.id>dev</build.profile.id>
                <profileActive>dev</profileActive>
            </properties>
        </profile>
        <profile>
            <id>test</id>
            <properties>
                <build.profile.id>test</build.profile.id>
                <profileActive>test</profileActive>
            </properties>
        </profile>
        <profile>
            <id>prod</id>
            <properties>
                <build.profile.id>prod</build.profile.id>
                <profileActive>prod</profileActive>
            </properties>
        </profile>
    </profiles>

अब आप मावेन के साथ एप्लिकेशन बनाने में सक्षम हैं। यदि आप किसी भी मावेन प्रोफ़ाइल को सेट नहीं करते हैं, तो इसका डिफ़ॉल्ट रूप से निर्माण होता है (इस उदाहरण में यह देव है)। निर्दिष्ट करने के लिए आपको एक मावेन कीवर्ड का उपयोग करना होगा। कीवर्ड है Maven में एक प्रोफ़ाइल सेट करने के लिए -P सीधे प्रोफ़ाइल के नाम और उसके बाद: mvn clean install -Ptest

अब, आप कस्टम बिल्ड बनाने में भी सक्षम हैं और तेजी से बिल्ड के लिए अपनी IDE में बचत करते हैं।

उदाहरण:

mvn clean install -Ptest

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v1.5.3.RELEASE)

2017-06-06 11:24:44.885  INFO 6328 --- [           main] com.demo.SpringBlobApplicationTests      : Starting SpringApplicationTests on KB242 with PID 6328 (started by me in C:\DATA\Workspaces\spring-demo)
2017-06-06 11:24:44.886  INFO 6328 --- [           main] com.demo.SpringApplicationTests      : The following profiles are active: test

mvn clean install -Pprod

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v1.5.3.RELEASE)

2017-06-06 14:43:31.067  INFO 6932 --- [           main] com.demo.SpringBlobApplicationTests      : Starting SpringApplicationTests on KB242 with PID 6328 (started by me in C:\DATA\Workspaces\spring-demo)
2017-06-06 14:43:31.069  INFO 6932 --- [           main] com.demo.SpringApplicationTests      : The following profiles are active: prod


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow