java - 从另一个 JSP 文件读取变量

标签 java jsp servlets scope

one.jsp中,我有

<% int testVar1 = 1; %>

two.jsp中,我有

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

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

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

最佳答案

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

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

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

注意:另请考虑 @Lion 在他的 comment 中所说的内容。对以后的发展有帮助。

希望这有帮助。

关于java - 从另一个 JSP 文件读取变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11620231/

相关文章:

java - 为什么我的客户端-服务器应用程序重复预期输出?

java - POI性能

java - 如何从 JSP 文件中删除实体(使用 Google App Engine 的 Java)

javascript - 下拉菜单在某些页面上不起作用

java - request.getAttribute() 在 jsp 中没有显示正确的输出

servlets - Dropwizard:设置 servlet 上下文参数

javascript在循环内悬停href时获取参数

java - 根据索引的模数将整数添加到 ArrayList

java - 在 Android 中,有没有使用类来格式化一组 View 的方法?

java - 如何使用 <fmt :setLocale> 中的 java 变量设置区域设置