我们有一个用struts编写的小项目。 在一个地方,我看到几个动作类从静态类调用一个静态辅助方法。
这是代码的结构
MyAction implements ServletRequestAware{
// this is the SMD method which we are calling from client side
buildCode() {
Map<String, String> code = StaticHelper.validateAndGetCode();
}
}`
`StaticHelper {
public Map<String, String >static validateAndGetCode() {
initialzeVaiable(){
// here all the values are set to the empty values before build the
// return map
....
}
}
}
StaticHelper
具有不同的静态变量,这些变量特定于每个请求。我的问题是这是一个很好的设计方法。
由于变量在类中是静态的,因此当它们是多个请求时,它们可能会被充实。
答案 0 :(得分:3)
在您的情况下,使用静态不是好的设计方法,因为变量可能会有不同的请求请求。在多线程环境中,它可能会破坏您的代码。
所以建议避免做静电。
在Strut操作中创建StaticHelper的新实例并调用方法。