使用<%! %>定义的变量编译成servlet后成为servlet的私有成员变量,在servlet环境中,对于一个JSP页只允许有一个结果servlet的实例在运行和响应所有的页面请求。因此,在结果servlet中所有的成员变量可以被所有的请求所共享,所以只要成员变量没有重新赋值,下次访问该页面时仍然不变。而在<% %>中定义的变量编译成servlet后成为service()方法的一个本地变量,而service()方法中的本地变量只能每响应一次请求就重建一次。同时成员变量会自动初始化,所以只要声明后就可以使用;而本地变量在使用前一定要手动初始化,否则编译出错。
为什么jsp的声明 <%! %>的生命周期是从创建到服务器关闭??
最新推荐文章于 2022-04-10 10:47:07 发布