Java教程

吴裕雄--天生自然--SPRING--Spring Bean作用域

本文主要是介绍吴裕雄--天生自然--SPRING--Spring Bean作用域,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
在Spring中,不仅可以完成Bean的实例化,还可以为Bean指定作用域。在Spring中为Bean的实例定义了如表所示的作用域,通过@Scope注解来实现。

 

 

演示Bean的作用域,具体步骤如下。

    1.使用Eclipse创建Web应用并导入JAR包

    2.编写不同作用域的Bean

    3.创建配置类

    4.创建测试类

    5.运行测试类
package service;

import org.springframework.stereotype.Service;

@Service//默认为singleton相当于@Scope("singleton")
public class SingletonService {

}
package service;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Service;

@Service
@Scope("prototype")
public class PrototypeService {

}
package config;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

@Configuration
@ComponentScan("service")
public class ScopeConfig {

}
package config;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

import service.PrototypeService;
import service.SingletonService;

public class TestScope {
    public static void main(String[] args) {
        // 初始化Spring容器ApplicationContext
        AnnotationConfigApplicationContext appCon = new AnnotationConfigApplicationContext(ScopeConfig.class);
        SingletonService ss1 = appCon.getBean(SingletonService.class);
        SingletonService ss2 = appCon.getBean(SingletonService.class);
        System.out.println(ss1);
        System.out.println(ss2);
        PrototypeService ps1 = appCon.getBean(PrototypeService.class);
        PrototypeService ps2 = appCon.getBean(PrototypeService.class);
        System.out.println(ps1);
        System.out.println(ps2);
        appCon.close();
    }
}

 

 

 

这篇关于吴裕雄--天生自然--SPRING--Spring Bean作用域的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!