IOC反转控制 PersonService属性 PersonDao personDao接受通过xml注入的对象 PersonDaoBean. Person中save()调用 PersonDaoBean中的add()
package com.PersonDaoBean.test;
public interface PersonDao {
public abstract void add();
}
package com.PersonDaoBean.test;
//依赖注入
public class PersonDaoBean implements PersonDao {
@Override
public void add(){
System.out.println("PersonDaoBean执行。。。。。。。。。。。。。。。。。");
}
}
package com.bean.www;
import com.PersonDaoBean.test.PersonDao;
import com.dao.bean.www.PersonServiceDao;
public class PersonServiceBean implements PersonServiceDao {
//personDao接受PersonDaoBean注入的对象
private PersonDao personDao;
public PersonDao getPersonDao() {
return personDao;
}
public void setPersonDao(PersonDao personDao) {
this.personDao = personDao;
}
public void save() {
personDao.add();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="personDao" class="com.PersonDaoBean.test.PersonDaoBean"></bean>
<bean id="personService" class="com.bean.www.PersonServiceBean">
<property name="personDao" ref="personDao"></property>
</bean>
</beans>
package com.itcast.www;
import static org.junit.Assert.*;
import org.junit.BeforeClass;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.dao.bean.www.PersonServiceDao;
public class TestCaseDemo {
@BeforeClass
public static void setUpBeforeClass() throws Exception {
}
@Test
public void instanceSpring() {
ApplicationContext ctx = new ClassPathXmlApplicationContext(
"applicationContext.xml");
PersonServiceDao personService = (PersonServiceDao) ctx
.getBean("personService");
personService.save();
}
}