【问题标题】:Reading a variable from another JSP file从另一个 JSP 文件中读取变量
【发布时间】:2012-07-22 03:26:26
【问题描述】:

one.jsp 中,我有

<% int testVar1 = 1; %>

two.jsp中,我有

<%@ include file="one.jsp" %>
<% if(testVar1 == 1) { %>
<!-- Should equal 1 -->
<% } else { %>
<!-- Does not equal 1 -->
<% } %>

但是,并不总是采用正确的条件路径。如果我在执行条件测试之前没有读取 testVar1,即使在 one.jsp 中将 testVar1 设置为 0,它也始终评估为 true。

这是从第二个 JSP 文件中读取变量的正确方法吗?

【问题讨论】:

  • 我不明白你的意思。 “即使 testVar1 在 one.jsp 中设置为 0”:它设置为 1,而不是 0。“如果我不阅读 testVar1”是什么意思?
  • 如果您想降低 JSP 的复杂性,请遵循最佳实践,将 Java 从 JSP 移到 Java 类中(使用 bean、自定义标签等)。

标签: java jsp servlets scope


【解决方案1】:

我没有看到代码中有任何错误,它应该可以按预期工作。

至于在执行条件测试之前或之后阅读testVar1,应该没有任何区别。

我认为问题可能是您的 JSP 可能没有正确更新,即如果您更新 one.jsp 以使 testVar1 = 0 它可能不一定反映,因为它是 two.jsp 中包含的 JSP,所以您会还需要更新two.jsp,以便在编译two.jsp 时它会在编译期间采用更新的one.jsp。因此,简而言之,如果您进行任何更改,请更新两个 JSP。

注意:还请考虑@Lion 在他的comment 中所说的内容。这将有助于未来的发展。

希望这会有所帮助。

【讨论】:

  • 您认为这是一个更新问题是正确的。感谢您的帮助,以后我一定会采纳@Lion 的建议。
猜你喜欢
  • 2020-04-02
  • 1970-01-01
  • 2021-08-01
  • 2011-07-06
  • 2013-09-16
  • 1970-01-01
  • 2012-12-08
  • 2021-01-06
  • 1970-01-01
相关资源
最近更新 更多