Я хочу написать свою собственную простую структуру DI.Я хочу, чтобы он выполнял только такой простой случай, как Spring:
public interface IWriter {
public void writer(String s);
}
@Service
public class MySpringBeanWithDependency {
private IWriter writer;
@Autowired
public void setWriter(IWriter writer) {
this.writer = writer;
}
public void run() {
String s = "This is my test";
writer.writer(s);
}
}
@Service
public class NiceWriter implements IWriter {
public void writer(String s) {
System.out.println("The string is " + s);
}
}
public class Main extends TestCase {
@Test
public void test() {
ApplicationContext context = new ClassPathXmlApplicationContext(
"META-INF/beans.xml");
MySpringBeanWithDependency test = (MySpringBeanWithDependency) context
.getBean("mySpringBeanWithDependency");
test.run();
}
}
Тот же самый случай, но мб без XML-файла.
Может кто-нибудь объяснить концепцию этого типа фреймворкови напиши какой-нибудь код.