पर जाने के बाद @Value और application.properties के साथ समस्या जारी करें क्योंकि मुझे एक समस्या है क्योंकि मैं संस्करण 1.1.4 पर चला गया। स्प्रिंग बूट का रिलीज।स्प्रिंग बूट 1.1.4.RELEASE
@ वैल्यू के साथ एनोटेट किए गए मेरे चर वर्तमान में आवेदन में मौजूद होने के बावजूद मूल्यों के साथ पॉप्युलेट नहीं किए जा रहे हैं। प्रॉपर्टीज। इससे पहले मैं स्प्रिंग बूट @ संस्करण 1.0.2 का उपयोग कर रहा था, और यह ठीक काम कर रहा था।
यह सब अपग्रेड के बाद से शुरू हुआ, और मैंने कोई कोड परिवर्तन नहीं किया।
SampleApplication.java
package org.sample;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;
@Configuration
@ComponentScan
@EnableAutoConfiguration
@PropertySource(value = "classpath:application.properties")
public class SampleApplication {
private static Logger logger = LoggerFactory
.getLogger(TaskManagerApplication.class);
@Value("${org.sample.sampleProperty}")
private static String sampleProperty;
public static void main(String[] args) {
SpringApplication.run(SampleApplication.class, args);
System.out.print("SampleApplication started: " + sampleProperty);
}
@Bean
public static PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer() {
return new PropertySourcesPlaceholderConfigurer();
}
}
application.properties
spring.datasource.url: jdbc:mysql://127.0.0.1:3306/mydb
spring.datasource.username: root
spring.datasource.password: root
spring.datasource.driverClassName: com.mysql.jdbc.Driver
spring.jpa.show-sql: true
#Disable the ddl-auto:create once tables have been created
#spring.jpa.hibernate.ddl-auto: create
org.sample.sampleProperty=This is a sample property
photos.upload.dir=C:/temp/UserPhotos/
# Server port
server.port=8081
मैं एक PropertySourcesPlaceholderConfigurer सेम और यहां तक कि PropertySourcesPlaceholderConfigurer जोड़ने की कोशिश की है, लेकिन अभी भी समस्या बनी रहती है।
किसी को भी इसका अनुभव हुआ? या गुण फ़ाइल लोड करने के लिए एक नया तरीका है?
कृपया ध्यान दें कि मेरा डीबी कनेक्शन और सर्वर पोर्ट ठीक से पढ़ा जा रहा है क्योंकि मेरा एप्लिकेशन डीबी से कनेक्ट हो सकता है और मुझे इसे निर्दिष्ट पोर्ट के माध्यम से एक्सेस करना है। नमूनाप्रोपर्टी चर यद्यपि शून्य रहता है।
क्यों आप एक '@PropertySource घोषित '? यह बॉक्स से बाहर काम करना चाहिए (यानी '@ प्रॉपर्टीसोर्स' और 'PropertySourcesPlaceholderConfigurer' बीन –
हां, मुझे पता है। मैं' @ PropertySource' और '@ PropertySourcesPlaceholderConfigurer' के बिना उपयोग कर रहा था। मैंने इस समस्या का सामना करने के बाद इन्हें आजमाया, लेकिन कोई फायदा नहीं :( – Zaheeb
'@ वैल्यू '(जैसे' @Autowired) स्थिर क्षेत्रों पर काम नहीं करता है। अगर यह काम करता है, स्थिर क्षेत्रों पर, मैं कहूंगा कि यह अनजान था। –