Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 检索复选框的值_Java_Jsp_Servlets - Fatal编程技术网

Java 检索复选框的值

Java 检索复选框的值,java,jsp,servlets,Java,Jsp,Servlets,我已经创建了一个GetEmployeeDetails.jsp页面,在其中我记录了姓名、年龄、爱好等详细信息。 然后,我将其转发到一个sevlet,它使用getParameter()检索这些值。。 我的问题是表单中的“嗜好”使用诸如编程、唱歌、睡觉等复选框。当我将此页面转发到servlet时,我可以检索这些值并设置为会话对象,如下所示: String[] hobbies = request.getParameterValues("Hobbies"); for(int i=0;i&l

我已经创建了一个GetEmployeeDetails.jsp页面,在其中我记录了姓名、年龄、爱好等详细信息。 然后,我将其转发到一个sevlet,它使用getParameter()检索这些值。。 我的问题是表单中的“嗜好”使用诸如编程、唱歌、睡觉等复选框。当我将此页面转发到servlet时,我可以检索这些值并设置为会话对象,如下所示:

String[] hobbies = request.getParameterValues("Hobbies");
        for(int i=0;i<hobbies.length;i++){
        session.setAttribute("hobbies", hobbies[i]);
        }
String[]嗜好=request.getParameterValues(“嗜好”);

对于(int i=0;i您正在覆盖会话属性“嗜好”。它只包含一个值(最后设置的值),而不是整个列表。

覆盖
嗜好

试一试


在你的循环中,你只保存了爱好的最后一个值

要将所有可以设置为会话变量的内容保存到ArrayList中,请执行以下操作:

String[] hobbies = request.getParameterValues("Hobbies");
         ArrayList<String> aux=new ArrayList<>();
         for(int i=0;i<hobbies.length;i++){
             aux.add(hobbies[i]);
         }
         session.setAttribute("hobbies", aux);
String[]嗜好=request.getParameterValues(“嗜好”);
ArrayList aux=新的ArrayList();

对于(int i=0;i您正在覆盖
cabiods

您可以用
JSON
格式设置这些值,或者简单地像这样重新构造这些值

String str=new String(" ");
for(int i=1;i<hobbies.length;i++)
        str=str + "," +hobbies[i];
session.setAttribute("hobbies", str);
String str=新字符串(“”);

对于(int i=1;iyaa我知道了..但解决方案是什么?@user2412380然后我建议您选择正确答案…这样您就不会收到更多不必要的答案;)
String[] hobbies = request.getParameterValues("Hobbies");
         ArrayList<String> aux=new ArrayList<>();
         for(int i=0;i<hobbies.length;i++){
             aux.add(hobbies[i]);
         }
         session.setAttribute("hobbies", aux);
String str=new String(" ");
for(int i=1;i<hobbies.length;i++)
        str=str + "," +hobbies[i];
session.setAttribute("hobbies", str);