如何将变量从servlet传递到jsp页面?

我有一个servlet(前端控制器),它分析请求,准备一些必要的数据(模型),然后将它传递给jsp进行渲染。

我应该如何将数据从servlet传递给jsp? (我希望可以在request对象中向参数map添加新参数,但该映射是不可修改的)。

我可以为request添加属性,但我不知道如何从jsp中检索它们。

所有数据都应在请求范围内。 什么是正确的方法?

我可以为请求添加属性,但我不知道如何从jsp中检索它们。
你不需要专门“检索”它们,只需要引用它们即可

 request.setAttribute("titleAttribute", "kittens are fuzzy"); 

接着

 Title here: ${titleAttribute} 

您可以使用请求或会话范围。 除了Nikita Rybak的答案,你可以使用

 request.getSession().setAttribute("key","value"); 

然后使用scriplet在JSP中使用它。

 <%=session.getAttribute("key")%> 

请注意,在Nikita给出的示例中,使用了表达式语言(EL)(我不确定它是否是JSTL标记)。 您需要使用isELIgnored属性明确声明不要忽略EL。

 <%@ page isELIgnored="false" %>