我想知道scriptlet局部变量的变量范围是多么令人兴奋。例如:
<% String strong = "Indeed it is strong"; %>
我注意到我可以从像这样的JSP表达式中调用它
<%= strong %>
所以我想我们可以谈论“页面范围”。是否有任何文档解释JSP变量的范围?我还没有找到它。提前谢谢。
答案 0 :(得分:3)
JSP是一个servlet。
这样声明的变量最终以其服务方法结束,例如,服务方法的本地变量。
使用“bang”定义的变量,例如<%! String s = "hi"; %>
位于servlet的类级别。
答案 1 :(得分:1)
当我们对变量使用<% %>
时,我们定义一个局部变量,该变量仅在当前网页上有效。如果有人刷新网页,将再次定义此变量,因此其值将返回到原始值。
当我们使用<%! %>
作为变量时,我们定义了一个全局变量,它通过页面是通用的。它刚刚定义了一次。例如,我们定义一个全局,每次刷新网页时它都会增加,所以如果我们刷新网页,变量会增加而不是返回原始值。