测试类:
public class TestFactory {
@Test
public void demo02(){
//spring 工厂
String xmlPath="com/itheima/d_scope/applicationContext.xml";
ClassPathXmlApplicationContext applicationCon=new ClassPathXmlApplicationContext(xmlPath);
UserService userService=(UserService) applicationCon.getBean("userServiceId");
UserService userService2=(UserService) applicationCon.getBean("userServiceId");
System.out.println(userService);
System.out.println(userService2);
}
bean文件:
<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-4.1.xsd">
<bean id="userServiceId" class="com.itheima.d_scope.UserServiceImpl" scope="prototype"></bean>
</beans>
这里使用了scope=“prototype”,因为测试类中调用了两次“userServiceId”这个bean