使实例变量保持其新值

时间:2018-05-28 04:27:31

标签: java jsp instance-variables

大家好我有JSP,而且我放了一些java代码,我的实例变量有问题这里是我的代码

            String prov, prod, consProv="nothing";
            if(request.getParameter("button1")!= null)
            {
                prov = request.getParameter("cbProv");
                OC_DAO objProvDAO = new OC_DAO();
                datosProv = objProvDAO.mostrarDatos(prov);
                nombresProducto = objProvDAO.listarNomProd(prov);
                consProv = datosProv.getNomProv();
            }
            if(request.getParameter("button2")!= null)
            {
                prod = request.getParameter("cbProd");
                OC_DAO objProdDAO = new OC_DAO();
                datosProd = objProdDAO.mostrarDatProd(prod);
                datosProv = objProdDAO.devolverProveedor(prod);
                nombresProducto = objProdDAO.listarNomProd(datosProv.getNomProv());
            }
            if(request.getParameter("button3") != null && consProv == "nothing")
            {
                System.out.println("WRONG");
            }
            else if(request.getParameter("button3") != null && consProv != "nothing")
            {
                System.out.println("HI");
            }

通常点击顺序应为:Button1,Button2,Button3

该变量是为了防止点击第一个button3而不是button1,通过点击button1 consProv应该填充它的新值,而且确实如此,问题是当我点击button3它似乎变量&# 34; consProv"回到默认值,是否有办法维持从button1获得的价值?

1 个答案:

答案 0 :(得分:0)

您的consProv总是回到它的默认值取决于您的代码。每次请求初始化时,您为consProv设置一次默认值。

您应该将consProv分配到其他范围,例如请求或会话,这些范围从button3点击事件不可变。