再会,
在 java web 应用程序中,我有一个供用户单击的按钮,我将在方法中执行一些逻辑。我打算做一个检查,doSomething()
如果用户在这个按钮上点击超过 5 次并且(点击一些逻辑并抛出异常)。因此,我创建了一个变量来存储点击次数。我的代码如下:
@Session
private int count;
public Resolution add() throws BaseException {
if ( count >= 5 ) {
doSomething();
}
if ( true ) {
count++;
throw BaseValidationException();
}
return view( );
}
但是,在count++
之后不会 +1 计数throw BaseValidationException()
。但是如果我删除throw BaseValidationException()
,那么系统将doSomething()
在我点击按钮 5 次后运行add
。
我相信 throw Exception() 或者addGlobalError()
不会将变量值存储到会话中。除了将值存储到数据库之外,还有什么想法可以克服这个问题吗?