pring Bean Scope Prototype

Posted on: August 30, 2010 at 12:00 AM

In this tutorial you will learn about Spring Bean Scope Prototype
Spring Bean Scope

There are five different types of bean scopes (i.e. singleton, prototype,
request, session, global session) supported by the spring framework. Apart of
these five the Spring?s core scope is singleton and prototype. The singleton
return a single bean instance per spring IoC container and the prototype return
a new bean instance each time when requested. In this example it demonstrate the
concept of prototype.

SimpleBean.java

package spring.bean.scope.singleton;

public class SimpleBean {
String message;

public String getMessage() {
return message;
}

public void setMessage(String message) {
this.message = message;
}
}

AppMain.java

package spring.bean.scope.prototype;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import spring.bean.scope.prototype.SimpleBean;

class AppMain {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext(
new String[] { "context.xml" });

SimpleBean bean1 = (SimpleBean) context.getBean("simplebean2");
bean1.setMessage("Message by bean1");
System.out.println("Message : " + bean1.getMessage());

SimpleBean bean2 = (SimpleBean) context.getBean("simplebean2");
System.out.println("Message : " + bean2.getMessage());
}
}

context.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" xmlns:aop="http://www.springframework.org/schema/aop"

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

<!-- prototype -->

<bean id="simplebean2" class="spring.bean.scope.prototype.SimpleBean" scope="prototype"/>

</beans>

When you run this application it will display message as shown below:

Message : Message by bean1

Message : null

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。