Spring中xml配置开发
“开发”什么?
Spring有两大核心组件:IoC与AOP。 这里暂不涉及AOP。
Spring中做开发,要点就是“由Spring容器来管理Bean对象的创建”
实现Maven中web项目的开发,有dao层、service层,暂不模拟web层。
要求:
1. 将dao注入到service中
2. 用Spring容器创建Bean对象
dao层代码
public class UserDaoImpl implements UserDao {
private String username;
public void setUsername(String username) {
this.username = username;
}
@Override
public void save() {
System.out.println(username);
System.out.println("UserDaoImpl: save()............");
}
}
service层代码
public class UserServiceImpl implements UserService {
private UserDao userDao;
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
@Override
public void save() {
userDao.save();
}
}
XML配置
<!--配置Dao层的Bean对象-->
<bean id="userDao" class="cn.leap.dao.impl.UserDaoImpl">
<property name="username" value="John"/>
</bean>
<!--配置Service层的Bean对象-->
<bean id="userService" class="cn.leap.service.impl.UserServiceImpl">
<property name="userDao" ref="userDaoImpl"/>
</bean>
写测试代码
在Maven项目中的测试包下写的。
public class SpringAnnotationTest {
@Test
public void testSpringAnnotation() {
String config= "applicationContext.xml";
ApplicationContext context = new ClassPathXmlApplicationContext(config);
UserService service = (UserService) context.getBean("userService");
service.save();
}
}
运行结果
John
UserDaoImpl: save()............
从结果看,完成了开始的两个要求。