欢迎光临
我们一直在努力

JSP中变量的定义域-JSP教程,Jsp/Servlet

建站超值云服务器,限时71元/月

在<% …. %>定义的变量是jsp的本地变量,它们对于外部函数是不可见的,即使这些函数和变量在同一页面中声明。如:

<%
int evilvariable = "666";
%>

function testfunction() {
//在函数内部,变量evilvariable是不可见的
}
为什么呢?这是因为变量evilvariable最终成为结果servlet中service()方法的一个本地变量,因此它不能被结果servlet的其它方法存取。

对于在<%! %>中声明的变量将作为全局变量。如:

<%!
int evilvariable = "666";
%>

function testfunction() {
int x = evilvariable; //能够使用变量evilvariable
}
这是因为通过这种方式定义的evilvariable变量变为了结果servlet的一个私有成员变量,因此它可以被servlet中的所有的方法存取。

结论

理解以上的概念是很重要的,因为在servlet环境中,对于一个jsp页只允许有一个结果servlet的实例在运行和响应所有的页面请求。因此,在结果servlet中所有的成员变量可以被所有的请求所共享,而service()方法中的本地变量只能每响应一次请求就重建一次。故我们将变量放置到<server></server>标签中时,应注意以上的规则。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » JSP中变量的定义域-JSP教程,Jsp/Servlet
分享到: 更多 (0)

相关推荐

  • 暂无文章