Jsp 将setAttribute问题放入servlet

Jsp 将setAttribute问题放入servlet,jsp,servlets,Jsp,Servlets,我尝试将请求的属性传递到servlet中,但不知何故,它似乎不起作用: try{ request.setAttribute("str","test"); request.setAttribute("compt",compt); request.setAttribute("raton",raton); //I tried with different types // request.getParameterMap().size() always

我尝试将请求的属性传递到servlet中,但不知何故,它似乎不起作用:

try{
        request.setAttribute("str","test");
        request.setAttribute("compt",compt);
        request.setAttribute("raton",raton); //I tried with different types

// request.getParameterMap().size() always evaluate to 0 instead of "the number of arguments"

Map<String, String[]> parameters = request.getParameterMap(); 
        for(String parameter : parameters.keySet()) { //is never looped

                String[] values = parameters.get(parameter);

                for(String v : values) out.println(v);

        }



        request.getRequestDispatcher("/index.jsp").forward(request, response);
        }
        catch(Exception ex){
            ex.printStackTrace();
        }
试试看{
setAttribute(“str”、“test”);
setAttribute(“compt”,compt);
setAttribute(“raton”,raton);//我尝试了不同的类型
//request.getParameterMap().size()的计算值始终为0,而不是“参数数”
映射参数=request.getParameterMap();
for(字符串参数:parameters.keySet()){//从不循环
字符串[]值=参数。获取(参数);
对于(字符串v:值)out.println(v);
}
request.getRequestDispatcher(“/index.jsp”).forward(请求,响应);
}
捕获(例外情况除外){
例如printStackTrace();
}
当然,因此,在将请求解析到JSP中时,我没有得到任何属性。 我错过什么了吗

提前Thx

编辑:我没有发布JSP,因为问题在重定向之前就已经确定了范围,但这里是:

<body>
<%PrintWriter writer = response.getWriter();
%>
visites : 
<%
Map<String, String[]> parameters = request.getParameterMap();
for(String parameter : parameters.keySet()) {
    //this is never looped , nothing is displyed
        String[] values = parameters.get(parameter);

        for(String v : values) {
            System.out.println(v);
        }

}

 %>
</body>

访问:

参数是浏览器在发送请求时发送的数据,例如

http://localhost/foo?a=1&b=2
在上面的示例中,请求有两个参数“a”和“b”,其值分别为“1”和“2”。参数总是字符串

属性是完全不同的东西。它们是服务器选择存储在请求中的任何类型的对象,以便其他服务器端组件(例如JSP)稍后获取它们

要获取属性,不使用getParameterMap()。返回参数。你用

从JSP中,您可以简单地使用

${str}

要获取并打印名为
“str”

的属性,感谢您对参数和属性之间的说明,根据您的建议,我发现我可以通过以下方式显示我的属性:

-1-
${raton}
-2-
<% out.println(request.getAttribute("raton"));    %>
-3-<%=request.getAttribute("raton") %>
-1-
${raton}
-2-
-3-

也向我们展示您的JSP。您正在设置属性和读取参数。这些是非常不同的事情。使用getAttribute()读取属性,您将找到它们。你也没有发布你的JSP,所以我们无法解释为什么它没有达到你期望的效果(顺便说一句,你没有说过)。