2010-07-10 80 views
2

在一个jsp文件中声明的变量是否可以在另一个中使用?例如:从其他jsp页面获取'全局'变量?

// index.jsp 
<% 
int count = 40; 
%> 

<%@include file='go.jsp'%><% 


// go.jsp 
<% 
count += 10; 
%> 

对于go.jsp是可见的计数吗?无论如何,我猜这不是一个好的设计(期待全局变量可以从另一个页面中获得),只是想知道这是否可以在我原型的时候工作。

谢谢

回答

3

是的,它会工作。您的JSP被编译为一个servlet,其中的doGet(..)方法包含所有包含页面的代​​码。

如果您想要类似的东西,您最好将变量放在页面上下文中 - pageContext.setAttribute("attrName", value);,然后用相应的方法检索它。

如果使用JSTL,您可以通过使用<c:set var="varName" value="yourValue" />做到这一点,然后使用JSTL表达式变量:${varName}