在<% .... %>定义的变量是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>标签中时,应注意以上的规则。
分享到:
相关推荐
本资源提供了jsp程序设计的习题解答,涵盖了jsp基础知识、jsp页面设计、jsp服务器配置、jsp变量作用域、jsp指令标记和动作标记的使用等多方面的知识点。 jsp基础知识 jsp程序设计是基于Java的服务器端脚本语言,...
2. **request**作用域:比page作用域稍大,一个请求中的所有资源(如Servlet、JSP)都能访问在此作用域内设置的属性。这意味着,如果一个请求经过了多个Servlet或JSP,这些对象依然可用。`request.setAttribute()`...
如果把变量放到pageContext 里,就说明它的作用域是pageScope,变量的有效范围只在当前jsp页面里。如果把变量放到request里,就说明它的作用域是requestScope,变量的有效范围是当前请求周期。如果把变量放到session...
#### 二、JSP变量作用域与生命周期 1. **成员变量与局部变量的区别** - 成员变量:在`!`和`%>`之间声明的变量,它们在整个JSP页面内有效,且所有用户共享,意味着任何用户对该变量的操作会影响到其他用户。 - ...
page作用域是指当前页面的生命周期,以JSP页面为单位,页面销毁后页面作用域的变量将被销毁。 request作用域是指当前请求的生命周期,以一个HTTP请求为单位,请求结束后request作用域的变量将被销毁。 session作用...
JSP四大作用域指的是page、request、session和application,它们定义了变量的有效范围,从而控制了变量的生命周期。 1. **page作用域**:page作用域是最小的作用域,它仅限于当前页面,一旦页面响应结束,该作用域...
* 变量和方法的作用域需要被正确地控制,以避免名称冲突和数据污染。 结论 jsp 中变量及方法的声明与使用对于 JSP 程序的正确性和效率具有非常重要的影响。在本文中,我们详细介绍了 jsp 中变量及方法的声明与使用...
`声明的变量在整个JSP页面内有效,题目中"错误"的标记可能是因为对JSP变量作用域的理解有误。 6. 创建关系表的SQL语句:CREATE是用于创建数据库表的SQL命令,所以选项B是正确的。 7. SCAN循环语句:SCAN是用于数据...
JSP变量作用域 - 题目描述的“”之间声明的变量在部分JSP页面内有效这一说法是**错误**的。实际上,在JSP中,`<% %>`之间的代码是在服务器端执行的Java代码,而变量的作用域取决于其声明的位置。例如,在`<% %>`内...
5. JSP变量作用域:在JSP中,"%"之间的声明的变量通常具有page作用域,只在当前页面内有效。 6. 数据绑定控件:在VB或类似的编程环境中,ComboBox、Grid和TextBox等控件可以与数据库中的数据绑定,显示和交互数据。...
22. JSP变量作用域:在JSP中,`! %>`之间声明的变量属于页面作用域,答案缺少具体描述,通常这个范围内的变量在整个JSP页面内有效。 以上是对计算机二级考试题目的详细解析,涵盖了多方面的知识,包括并发控制、...
2. JSP变量作用域:在JSP中,不同类型的变量有不同的作用域。在`和`--%>`之间的注释不会声明变量,而是作为HTML注释存在,不会在JSP页面内创建变量。 3. VisualFoxpro介绍:Visual FoxPro是一款32位的数据库开发...
24. JSP变量作用域:在JSP中,`<jsp:useBean>`之间的变量仅在当前JSP页面内有效。 25. 比较运算:在编程中,可以比较数值、字符串、日期等多种类型的数据。 这些题目涉及的知识点广泛,包括计算机基础、网络、...
3. JSP变量作用域:JSP中在! %>之间声明的变量是全局变量,在整个JSP页面内有效,所以题目中的“错误”表述是不准确的。 4. Word2003的拼写检查:当输入的单词出现拼写错误时,Word会在错误处显示红色下划波浪线,C...
20. JSP变量作用域:在之间的注释内声明的变量仅在该注释内有效,但题目中的符号错误,选项错误。 21. 存储函数创建:创建存储函数的语句中,返回类型应该是DECIMAL,BEGIN关键字后应定义函数体。 这些题目涉及的...
13. JSP变量作用域:在JSP中,声明在! %>之间的变量在整个JSP页面内有效,而声明在之间的变量仅在该标签内部有效。 14. 日期/时间数据类型:在数据库系统中,日期/时间类型通常占用8个字节的存储空间。 15. 垃圾...
8. **JSP变量作用域**:在JSP中,`!`声明的变量在整个JSP页面范围内有效,不是在`""`之间声明的。 9. **SQL聚合函数**:在SQL查询中,要找到被订购过至少三次的产品ID,应该使用`GROUP BY`结合`HAVING COUNT()`,...
6. JSP变量作用域:在JSP中,“!”声明的变量在整个JSP页面内有效,而“”之间声明的变量只在当前脚本let内有效。 7. Access数据库类型:Access是一个关系型数据库管理系统,采用表格形式存储数据。 8. 应用软件:...
11. JSP变量作用域:在JSP中,<jsp:declaration>标签内的变量仅在当前JSP页面内有效,而不是部分页面。 12. 计算机网络特点:资源共享是计算机网络的主要特点之一,而非运算速度、精度或内存容量。 13. 电子邮件:...
#### JSP变量作用域 - **知识点**: JSP(Java Server Pages)中的变量作用域。 - **解析**: 在JSP页面中,使用`<% %>`标签声明的变量通常在整个页面内有效,但不会跨越页面。 #### continue语句 - **知识点**: 控制...