jsp include,转发请求参数

标签 jsp servlets request parameter-passing

在我的 jsp 文件中,我通过 request.getAttribute() 从请求中提取数据。

在这个 jsp 中,我需要包含另一个 jsp。这个包含的 jsp 是否可以访问请求,或者我是否需要以某种方式转发数据?

最佳答案

它将可用:

  • 如果您正在执行静态包含 ( <%@ include file=".." %> ),则包含文件的主体将放入 doGet(..) 中生成的 servlet 的方法(每个 JSP 都转换为一个 servlet),所以逻辑上,原来的 request可以在那里访问对象。

  • 如果您正在执行动态包含 ( <jsp:include> ), RequestDispatcher.include(..)被使用(在幕后)。如您所见,它需要 ServletRequest参数,这意味着原始请求被传递到那里。

最后,避免在 JSP 文件中使用 Java 代码。使用 EL 和 JSTL。所以而不是 request.getAttribute("x")这将是 ${x} .

关于jsp include,转发请求参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3981335/

相关文章:

css - 在jsp中对一组特定的表行应用类

java - 如何获得所有可用 servlet 的列表?

language-agnostic - 有效的 HTTP header ? `GET/page.html Http1.0` ?

mysql - SQL 按一定顺序查找具有两个历史记录的所有用户

java - 使用 JSTL 打印 Java 列表的问题

mysql - "Confirm Form Resubmission"问题。 MVC servlets JSP javabean

java - 如何处理来自使用 servlet 上传的 java 进程的文件

java - 获取Spring文件上传的异常

java - 来自另一个 servlet 的 request.getContext?

java - 如何根据java中的if-else条件向结果集返回的列值添加颜色