欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

在SpringMVC中的Controller里面定义全局变量

程序员文章站 2024-01-21 21:01:16
...

使用SpringMVC的时候,如果想要在Controller中定义一个全局变量,并且实现在不同用户访问程序的时候,所得到的全局变量不一样的(线程安全的),这个时候就可以用Spring的注解@Scope来实现:

@Controller
//把这个bean 的范围设置成session,表示这bean是会话级别的,
@Scope("session")
public class XxxController{
	private List<String> list ;
  
  //@PostConstruct当bean加载完之后,就会执行init方法,并且将list实例化;
	@PostConstruct
	public void init(){
		list = new ArrayList<String>();
	}

}

 当我们首次访问这个Controller的时候,他会根据判断这个会话是不是处于同一个session中,如果是一个新的,容器会执行init方法,如果一样就不会。