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()............
從結果看,完成了開始的兩個要求。