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

SpringMVC之控制器的单例和多例配置

程序员文章站 2024-03-16 18:50:22
...

在使用Spring3对控制器Controller进行bean管理时,如果要对控制器是否单例进行管理。

有两种方式配置多例模式:

1.springXML

SpringMVC之控制器的单例和多例配置

2.注解本身的控制器类

  1. @Controller  
  2. @Scope(“prototype”)  
  3. public class HelloContorller {  
  4.     private int index=0;  
  5.     Logger logger=Logger.getLogger(HelloContorller.class.getName());  
  6.       
  7.     //hello world例子  
  8.     @RequestMapping(value=“/hello”)  
  9.     public String hello(){  
  10.         logger.info(”spring mvc hello world!”+index++);  
  11.         return “hello”;  
  12.     }  
  13. }  
@Controller
@Scope("prototype")
public class HelloContorller {
    private int index=0;
    Logger logger=Logger.getLogger(HelloContorller.class.getName());

    //hello world例子
    @RequestMapping(value="/hello")
    public String hello(){
        logger.info("spring mvc hello world!"+index++);
        return "hello";
    }
}


这里有个困惑就是当index变量为静态时,那么尽管是多例模式下,对于每次请求访问,index变量都会累积相加。所以可以初步断定,多例的产生原理不简简单单是重新new一个控制器。