Wie man den Zustand des Fortify Race behebt: Problem mit dem Singleton Member Field

Ich stoße auf ein Problem. In meinem Projekt wird das Spring MVC-Framework verwendet, der standardmäßige Spring MVC-Controller ist jedoch das Singleton-Modell. Ich ändere den Controller mithilfe von @Scope ("Sitzung") nach Sitzung, um ein Problem mit den Race-Bedingungen zu vermeiden (jeder hat einen eigenen Controller).

@Controller
@Scope("session")
public class AP0Controller extends BaseController {

    @Autowired
    GnRecService gnRecService;

    Integer seq = null;//Global variable

    @RequestMapping(value = "/agn/AP1W01A_004", method=RequestMethod.GET)
    public ModelAndView welcomeGrid(@RequestParam("payType")String payType){
        seq = gnRecService.findTheLastPK(payType);
        ModelAndView view = new ModelAndView(".agn.AP1W01A_004");
        return view;
    }

    public ModelAndView showPk() {
        seq +=2; 
        ModelAndView view = new ModelAndView(".agn.AP1W01A_004");
        view.addObject("seq",seq)
        return view;
    }

}

Nach dem Scannen durch HP Fortify wird im Bericht darauf hingewiesen, dass dies zu einem Race Condition führt. Wie kann ich das Problem beheben und beheben?

seq +=2;//Race Condition: Singleton Member Field

Antworten auf die Frage(4)

Ihre Antwort auf die Frage