springMVC中的Controller里面定义全局变量


使用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方法,如果一样就不会。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM