您好我試圖用一個非常簡單的方法可闡明你的答案。
以下是我使用兩個接口和兩個bean類構建的代碼。
名稱爲Job的第一個界面。
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>
我也接受了另一個在線教程,然後得到了這樣的解決方案。如果您對此代碼有任何問題,請告訴我。它爲我工作。
你知道,除了「不知道這個話題」之外,可能會因爲其他原因而降低投票率。什麼,*特別*,你想要一個例子嗎?爲你的問題定義「接口注入」。 – 2012-04-20 14:22:55
我猜downvote是迴應你的第一段咆哮和事實,你的實際問題是模糊的,可以很容易地簡化爲「有人可以給和Spring接口注入的例子嗎?我已經搜索了幾個網站,還沒有找一個。」 (當然,這是你的問題)如果你發佈了你閱讀過的文章,那麼人們可以更好地瞭解你已經看過的內容。 – lrAndroid 2012-04-20 14:27:11
除了來自@NimChimpsky(在Spring中稱爲AutoWiring並且通過Annotations或XML支持)的答案外,還有一個關於這個主題的大量資源的SO問題:http://stackoverflow.com/questions/2827147/真的支持接口注入在所有 – 2012-04-20 14:30:01