有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java我正在尝试使用getParameterName()。但例外情况正在增加。如果我做错了,请告诉我正确的方法

代码:

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);
    }
}

共 (1) 个答案

  1. # 1 楼答案

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

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