मेरे पास ऑटोवायर्ड कंस्ट्रक्टर वाला एक वर्ग है।

अब जब मैं अपनी कक्षा में इस क्लास ऑब्जेक्ट को ऑटोवॉयरिंग कर रहा हूं। मैं कंस्ट्रक्टर के लिए तर्क कैसे पास करूं ??

उदाहरण कोड: ऑटोवायर्ड कंस्ट्रक्टर वाला वर्ग:

@Component
public class Transformer {
    private String dataSource;
    @Autowired
    public Transformer(String dataSource)
    {
        this.dataSource = dataSource;
    }
}

तर्कों के साथ कंस्ट्रक्टर वाले घटक के लिए ऑटोवायर का उपयोग करने वाला वर्ग:

@Component
    public class TransformerUser {
        private String dataSource;
        @Autowired
        public TransformerUser(String dataSource)
        {
            this.dataSource = dataSource;
        }
        @Autowired
        Transformer transformer;

    }

यह कोड संदेश के साथ विफल रहता है

"कंस्ट्रक्टर पैरामीटर 0 के माध्यम से व्यक्त असंतुष्ट निर्भरता"

ट्रांसफार्मर प्रकार का बीन बनाते समय।

ऑटोरवायरिंग करते समय मैं ट्रांसफॉर्मर को तर्क कैसे पास करूं ??

7
Radhi 30 मई 2018, 12:32

1 उत्तर

सबसे बढ़िया उत्तर
package com.example.demo;

import org.springframework.beans.factory.annotation.Autowired;

import lombok.extern.slf4j.Slf4j;

@Slf4j
public class Transformer {
    private String datasource;

    @Autowired
    public Transformer(String datasource) {
        this.datasource=datasource;
        log.info(datasource);
    }
}

फिर एक कॉन्फिग फाइल बनाएं

package com.example.demo;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class BeanConfig {
    @Bean
    public Transformer getTransformerBean() {
        return new Transformer("hello spring");
    }

    @Bean
    public String getStringBean() {
        return new String();
    }
}
7
djm.im 29 अक्टूबर 2018, 13:33