项目是struts1.x的项目,而在action中有大量的类似代码:
老是有人说系统经常出现莫名其妙的问题,这样写能会没问题吗?
奇怪! 奇怪!
[size=x-large]补充:[/size]
由于项目struts1.x对于这样的类中如果有实例变量,如manager这样的代码,如果manager是可变的,这样会造成多用户访问时候的错误。struts1.x的action是只存在一个实例变量的。
关于这种代码,经过一段时间的学习研究,发现这样写还有的问题在于就算manager是个非可变的类,由于action在系统中是一直存在的,这样对于他的实例变量的引用也是一直存在的,如果manager类是个非常大的类的话,就会带来内存很大的消耗。
public class XXXAction extends DispatchAction
{
private XXXManager manager = null
public XXXAction()
{
manager = new XXXManager();
}
... ...
}
老是有人说系统经常出现莫名其妙的问题,这样写能会没问题吗?
奇怪! 奇怪!
[size=x-large]补充:[/size]
由于项目struts1.x对于这样的类中如果有实例变量,如manager这样的代码,如果manager是可变的,这样会造成多用户访问时候的错误。struts1.x的action是只存在一个实例变量的。
关于这种代码,经过一段时间的学习研究,发现这样写还有的问题在于就算manager是个非可变的类,由于action在系统中是一直存在的,这样对于他的实例变量的引用也是一直存在的,如果manager类是个非常大的类的话,就会带来内存很大的消耗。