轉自:http://zhangjunhd.blog.51cto.com/113473/126530/
public class MyBusniessObject{
private DataSource ds;
private MyCollaborator myCollaborator;
public MyBusnissObject(){
Context ctx = null;
try{
ctx = new InitialContext();
ds = (DataSource) ctx.lookup(“java:comp/env/dataSourceName”);
myCollaborator =
(MyCollaborator) ctx.lookup(“java:comp/env/myCollaboratorName”);
}……
|
package com.zj.ioc.di;
publicclass Content {
publicvoid BusniessContent(){
System.out.println("do business");
}
publicvoid AnotherBusniessContent(){
System.out.println("do another business");
}
}
|
package com.zj.ioc.di.ctor;
import com.zj.ioc.di.Content;
publicclass MyBusiness {
private Content
myContent;
public MyBusiness(Content content) {
myContent = content;
}
publicvoid doBusiness(){
myContent.BusniessContent();
}
publicvoid doAnotherBusiness(){
myContent.AnotherBusniessContent();
}
}
|
package com.zj.ioc.di.set;
import com.zj.ioc.di.Content;
publicclass MyBusiness {
private Content
myContent;
publicvoid setContent(Content content) {
myContent = content;
}
publicvoid doBusiness(){
myContent.BusniessContent();
}
publicvoid doAnotherBusiness(){
myContent.AnotherBusniessContent();
}
}
|
package com.zj.ioc.di.iface;
import com.zj.ioc.di.Content;
publicinterface InContent {
void createContent(Content content);
}
|
package com.zj.ioc.di.iface;
import com.zj.ioc.di.Content;
publicclass MyBusiness
implements InContent{
private Content
myContent;
publicvoid createContent(Content content) {
myContent = content;
}
publicvoid doBusniess(){
myContent.BusniessContent();
}
publicvoid doAnotherBusniess(){
myContent.AnotherBusniessContent();
}
}
|
public static void main(String[] args) throws Exception{
//get the bean factory
BeanFactory factory = getBeanFactory();
MessageRender mr = (MessageRender) factory.getBean(“renderer”);
mr.render();
}
|