@Scope:-  In Spring 3.0 we can define bean or we can do configuration using Java File. @Scope annotation can be used to define the bean scope.
Example:
JavaConfig.java
package com.babita;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Scope;
@Scope("prototype")
@Configuration
public class JavaConfig {
    private String message;
    public String getMessage() {
        return message;
    }
    public void setMessage(String message) {
        this.message = message;
    }
}
MainApp.java
package com.babita;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MainApp {
    public static void main(String[] args) {
         ApplicationContext context = new AnnotationConfigApplicationContext(JavaConfig.class);
            JavaConfig obj = (JavaConfig) context.getBean("javaConfig");
            obj.setMessage("Hello World From Manish");
            System.out.println(obj.getMessage());
            JavaConfig obj1 = (JavaConfig) context.getBean("javaConfig");
            System.out.println(obj1.getMessage());
    }
}
Output:-
Hello World From MAnish
null
In above example I have done the configuration using Java File(JavaConfig). The given java configuration file(JavaConfig.java) can be treated as Bean and we can also mention the scope of that bean using @Scope annotation.  
                       
                    
0 Comment(s)