1.加入jar包

文件层次

2.写beans.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="UserService" class="com.ztcontrol.service.UserService">
<!-- collaborators and configuration for this bean go here -->
</bean>
<import resource="adminService.xml"/>
</beans>和一个包含的xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="AdminService" class="com.ztcontrol.service.AdminService">
</bean>
</beans>3.domain model和service层
package com.ztcontrol.model;
public class User {
private int id;
private String name;
private String password;
//getters&setters
@Override
public String toString() {
return "(User: "+this.getName()+" )";
}
}package com.ztcontrol.model;
public class Administrator {
private int id;
private String name;
private String password;
//getters&setters
@Overridepublic String toString() {return "(Administrator: "+this.getName()+" )";}}
package com.ztcontrol.service;
import com.ztcontrol.model.Administrator;
public class AdminService {
public void addUser(Administrator a) {
System.out.println(a+" added!");
}
}
package com.ztcontrol.service;
import com.ztcontrol.model.User;
public class UserService {
public void addUser(User u) {
System.out.println(u+" added!");
}
}
4.测试类,从容器中拿出来bean
import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.ztcontrol.model.Administrator;
import com.ztcontrol.model.User;
import com.ztcontrol.service.AdminService;
import com.ztcontrol.service.UserService;
public class tests {
public static void main(String [] args) {
ApplicationContext context = new ClassPathXmlApplicationContext(
new String[] {"beans.xml"});
BeanFactory factory = context;
UserService us = (UserService) factory.getBean("UserService");
User u = new User();
u.setName("foo");
us.addUser(u);
AdminService as = (AdminService) factory.getBean("AdminService");
Administrator a = new Administrator();
a.setName("bar");
as.addUser(a);
}
}
本文介绍了一个使用 Spring 框架实现的简单 IoC 容器示例,包括配置 beans.xml 文件来定义 Bean 的实例化方式,创建 User 和 Administrator 类作为 Domain Model,并通过 UserService 和 AdminService 提供业务逻辑服务。最后展示了如何通过 ApplicationContext 接口获取并使用这些服务。
2314

被折叠的 条评论
为什么被折叠?



