Action / controller
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Action / controller相关的知识,希望对你有一定的参考价值。
struts 2的Action默认是多实例 的并非单例,也就是每次请求产生一个Action的对象,即每次访问的参数都被封装在Action的成员变量中。
struts2中Action多实例的优势在于是线程安全的,每次请求都会创建单独的Action类来处理,而不用想servlet一样担心线程安全问题。
Spring MVC Controller默认是单例的:
从此可见,单例是不安全的,会导致属性重复使用。
最佳实践:
1、不要在controller中定义成员变量。
2、万一必须要定义一个非静态成员变量时候,则通过注解@Scope("prototype"),将其设置为多例模式。
以上是关于Action / controller的主要内容,如果未能解决你的问题,请参考以下文章
Redux + Typescript:参数'action'和'action'的类型不兼容