Я столкнулся с ситуацией, когда значение счетчика продолжает увеличиваться при обработке входящего HTTP-запроса, а не устанавливается на 0. Он действует как переменная класса, а не как переменная экземпляра. Интересно, это b/c, когда экземпляр класса Foo создается в первый раз, а затем для следующего раунда запроса создается поток для того же экземпляра. Кажется бессмысленным иметь переменную «счетчик» в качестве переменной экземпляра. Я должен сделать это как локальную переменную в методе doPost, если я хочу сбросить ее до нуля после завершения процесса входящих данных для следующего раунда входящего запроса. Есть ли лучший способ справиться с этой ситуацией как часть переменной класса?
public class Foo extends HttpServlet {
private int counter = 0;
protected void doPost(.....) throws Exception {
// process incoming request data
// increment counter by one
counter++;
......
}
}