package com.ls.spring.ioc.dummy;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class A {
@Autowired
private B b;
public A() {
super();
}
public A(B b) {
super();
this.b = b;
}
public B getB() {
return b;
}
public void setB(B b) {
this.b = b;
}
}
package com.ls.spring.ioc.dummy;
import org.springframework.stereotype.Component;
@Component
public class B {
public void put() {
System.out.println("B is outing...");
}
}
a.(class)=com.ls.spring.ioc.dummy.A
b.(class)=com.ls.spring.ioc.dummy.B
a.$0(ref)=b
#---setter injection---
#a.b(ref)=b
package com.ls.spring.ioc.dummy;
import org.springframework.beans.factory.support.DefaultListableBeanFactory;
import org.springframework.beans.factory.support.PropertiesBeanDefinitionReader;
public class TestBeanFactoryViaProperties {
public static void main(String[] args) {
DefaultListableBeanFactory factory = new DefaultListableBeanFactory();
PropertiesBeanDefinitionReader reader = new PropertiesBeanDefinitionReader(factory);
reader.loadBeanDefinitions("classpath:com/ls/spring/ioc/dummy/ioc-test.properties");
A a = (A) factory.getBean("a");
a.getB().put();
}
}