हाय मैं एक बहुत ही सरल दृष्टिकोण है कि आपका जवाब स्पष्ट कर सकता है के साथ की कोशिश की।
निम्नलिखित कोड है जिसे मैंने दो इंटरफेस और दो बीन कक्षाओं का उपयोग करने पर बनाया है।
नाम नौकरी के साथ पहला इंटरफ़ेस।
public interface Job {
public void setmyJob(String myJob);
public String getmyJob();
}
और एक वर्ग एक और वर्ग के लिए फिर से MyJob
public class MyJob implements Job {
public String myJob;
public MyJob() {
System.out.println("From MyJob default Constructor and the ID= "+this);
}
public void setmyJob(String myJob) {
this.myJob=myJob;
}
public String getmyJob() {
return myJob;
}
}
के रूप में नाम के साथ इस इंटरफ़ेस को लागू करने के लिए अगले कदम मैं सेवा
रूप
public interface Service {
public void setJob(Job job);
public Job getJob();
}
नाम के साथ एक और इंटरफ़ेस बनाई में और उसके बाद इस सेवा इंटरफेस को लागू करें।
public class MyService implements Service {
public Job job;
public void setJob(Job job) {
this.job=job;
System.out.println("Hello from Myservice: Job ID="+job);
}
public Job getJob() {
return job;
}
}
तो मैं मुख्य कार्य के साथ मुख्य वर्ग पर बनाया गया है और इस प्रकार कोड लिखा:
import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MainApplication {
public static void main(String...a) {
BeanFactory beanfactory=new ClassPathXmlApplicationContext("Beans.xml");
MyService myservice=(MyService)beanfactory.getBean("myservice");
System.out.println("Before print");
System.out.println(myservice.getJob().getmyJob());
}
}
मेरी Beans.xml फ़ाइल में मैं के रूप में इस प्रकार है और यह काम किया कोड का उल्लेख किया।
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="myjob" class="MyJob">
<property name="myJob" value="My First String"/>
</bean>
<bean id="myservice" class="MyService">
<property name="job" ref="myjob"/>
</bean>
</beans>
मैं भी एक और ऑनलाइन ट्यूटोरियल करने के लिए भेजा है और फिर समाधान इस तरह का हो गया। अगर आपको इस कोड के साथ कोई समस्या है तो कृपया मुझे बताएं। यह मेरे लिए काम कर रहा है।
स्रोत
2013-02-04 10:14:32
"विषय के बारे में नहीं जानते" की तुलना में अन्य कारणों से डाउनवोट करना संभव है, आपको पता है। क्या, * विशेष रूप से *, क्या आप का एक उदाहरण चाहते हैं? अपने प्रश्न के प्रयोजनों के लिए "इंटरफेस इंजेक्शन" परिभाषित करें। –
मुझे लगता है कि डाउनवोट आपके पहले पैराग्राफ रेंट के जवाब में था और यह तथ्य कि आपका वास्तविक प्रश्न अस्पष्ट है और आसानी से सरलीकृत किया जा सकता है "क्या कोई स्प्रिंग इंटरफ़ेस इंजेक्शन का उदाहरण दे सकता है? मैंने कई साइटों की खोज की है और अभी तक ढूँढो एक।" (निश्चित रूप से, यह आपका प्रश्न है) यह आपकी मदद भी कर सकता है यदि आपने उन लेखों को पोस्ट किया है जिन्हें आपने पढ़ा है ताकि लोग जो पहले से देख चुके हैं उसके बारे में बेहतर विचार प्राप्त हो। – lrAndroid
@NimChimpsky (जिसे स्प्रिंग में ऑटोवायरिंग कहा जाता है और एनोटेशन या एक्सएमएल के माध्यम से समर्थित है) के जवाब के अलावा, इस विषय पर संसाधनों के एक टन के साथ यह SO सवाल है: http://stackoverflow.com/questions/2827147/ वास्तव में-समर्थन-इंटरफ़ेस-इंजेक्शन-पर-सभी –