Java 我正在尝试使用getParameterName()。但出现异常。如果我使用了错误的方法,请告诉我正确的方法 代码:

Java 我正在尝试使用getParameterName()。但出现异常。如果我使用了错误的方法,请告诉我正确的方法 代码:,java,Java,正如@Shekhar所说,您的代码应该是这样的 protected void signup(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException, NamingException ,SQLException{ response.setContentType("text/html;charset=UTF-8"); PrintWriter out

正如@Shekhar所说,您的代码应该是这样的

protected void signup(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, NamingException ,SQLException{
    response.setContentType("text/html;charset=UTF-8");
     PrintWriter out = response.getWriter();
     try{
        String [] values = new String [10];
        Context cx=new InitialContext();
        DataSource ds=(DataSource) cx.lookup("jdbc/myDatasource");
        Connection conn=ds.getConnection();
        Enumeration en=request.getParameterNames();
        String str="insert into sign values(?,?,?)";
        PreparedStatement pos=conn.prepareStatement("str");
        for(int i=0;en.hasMoreElements();i++){
            String param=(String) en.nextElement();
            values [i]=request.getParameter("param");
            pos.setString(i,values[i]);
        }
        RequestDispatcher dss=request.getRequestDispatcher("index.jsp");
        dss.forward(request, response);
    }catch(Exception e){
        RequestDispatcher dss=request.getRequestDispatcher("error.jsp");
        dss.forward(request, response);
    }
}

您能告诉我们您得到了什么异常以及在哪里吗?欢迎来到堆栈溢出。您将需要包含一点解释,而不仅仅是发布一堆代码。en.hasMoreElements()返回布尔值,以便您可以使用while循环或只为(;en.hasMoreElements();){}进行初始化和递增。您的意思是
getParameterNames()
,使用
s
?@jpmc26是的。但我只是建议两者兼而有之
int i=0;    
while(en.hasMoreElements()){

     String param=(String) en.nextElement(); 
     values [i]=request.getParameter("param");
     pos.setString(i,values[i]);                
     i++;  
}