jsp脚本元素
在JSP页面中有三种脚本元素(Scripting Elements):声明、小脚本和表达式。
声明(declaration)用来在JSP页面中声明变量和定义方法。声明是以<%!开头,以%>结束的标签,其中可以包含任意数量的合法的Java声明语句。下面是JSP声明的一个例子:
<%! int count = 0; %>
上面代码声明了一个名为count的变量并将其初始化为0。声明的变量仅在页面第一次载入时由容器初始化一次,初始化后在后面的请求中一直保持该值。
下面的代码在一个标签中声明了一个变量和一个方法:
<%!
String color[] = {"red", "green", "blue"};
String getColor(int i){
return color[i];
}
%>
也可以将上面的两个Java声明语句写在两个JSP声明标签中,如:
<%! String color[] = {"red", "green", "blue"}; %>
<%!
String getColor(int i){
return color[i];
}
%>
小脚本(scriptles)是嵌入在JSP页面中的Java代码段。小脚本是以<%开头,以%>结束的标签。例如<% count++; %>
小脚本在每次访问页面时都被执行,因此count变量在每次请求时都增1.由于小脚本可以包含任何Java代码,所以它通常用来在JSP页面嵌入计算逻辑。同时还可以使用小脚本打印HTML模板文本。
表达式(expression)是以<%=开头,以%>结束的标签,它作为Java语言表达式的占位符。如<%= count%>
包含一个符合Java语法的表达式。表达式的元素在运行后被自动转化为字符串,然后插入到这个表达式的JSP文件的位置显示。因为这个表达式的值已经转化为字符串,所以能在一行文本中插入这个表达式。表达式是一个简化的了的out.println语句。[1]
在页面每次被访问时都要计算表达式,然后将其值嵌入到HTML的输出中。与变量声明不同,表达式不能以分号结束,因此下面的代码是非法的:
<%= count; %>
使用表达式可以向输出流输出任何对象或任何基本数据类型的值,也可以打印任何算术表达式、布尔表达式或方法调用返回的值。
在JSP表达式的百分号和等号之间不能有空格。
jsp脚本元素的更多相关文章
- JavaWeb学习----JSP脚本元素、指令元素、动作元素
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- JSP脚本元素上机手册
L3 <JSP基础>上机手册 内容回顾 脚本元素<%! %> <%= %> <% %> 注释元素 JSP指令元素 JSP动作元素 上机目标 掌握脚本元素 ...
- JSP脚本元素、指令元素、动作元素
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- JSP脚本元素(声明 %! 表达式 %= 脚本 %)
JSP脚本元素包括声明.表达式.脚本 声明(declaration):用于在JSP页面中声明合法的变量和方法.以“<%!”开始,以“%>”结束. 在JSP页面中,一个声明可以出现在任何地方 ...
- 复习:JSP基本的语法(JSP凝视 + JSP指令 + JSP脚本元素 + JSP动作元素)
JSP原理: 1. 对于每个请求.jsp容器都会创建一个新的线程来处理它: 2. Servlet容器载入jsp后转换成的servlet(.class文件)是常驻内存的,所以对应速度一般比較 ...
- JSP基础总结(运行机制、脚本元素、指令元素、动作元素)
JSP的运行机制: 1.转译阶段:JSP页面转换成Servlet类: 2.请求阶段:Servlet类执行,将相应结果发送至客户端. 流程解释: 1.用户访问某个JSP页面 2.服务器找到相应的JSP页 ...
- JSP基础总结 脚本元素
JSP脚本元素 1. JSP声明语句 JSP声明语句以<%!开始,以%>结束,其语法格式为:<%! 声明语句 %> 使用声明语句的变量为全局变量,也就是说,当有多个用户在执行 ...
- JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象
Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...
- JSP页面中最常使用的脚本元素
注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6513082449755374093/ 前面简单说了一个<JSP页面实际上就是Servlet>,接下来说 ...
随机推荐
- knockout.js 简介
Knockout是一个轻量级的UI类库,通过应用MVVM模式使JavaScript前端UI简单化. Knockout有如下4大重要概念: 声明式绑定 (Declarative Bindings):使用 ...
- Mysqli封装
<?php //headerheader('content-type:text/html;charset=UTF-8'); class DB { //定义属性 private $ho ...
- C#动态添加属性
class DynamicInputParams: DynamicObject { Dictionary<string, object> property = new Dictionary ...
- C语言内存分区
在C/C++中,内存分成5个区,他们分别是堆.栈.自由存储区.全局/静态存储区和常量存储区. 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区.里面的变量通常是局部变 ...
- LPTHW 笨办法学python 40章 类
今天读了LPTHW的第40章以后豁然开朗,原来一直愚钝,不太理解类的定义和使用,还有就是不太理解关于self的定义. class MyStuff(object): def __init__(self) ...
- 折腾Ubuntu下的android studio
ps:网速很慢,耗时一天多.先吐槽一下搭建很麻烦,毕竟现在在ubuntu上用as的人还不太多,很多步骤最好先自备梯子. 测试环境: ubuntu 14.04 LTS 64bit 安装的东西无非就是an ...
- 编写安装中断7ch的中断例程:将一个以0结尾的字符串,转化为大写
中断的安装程序: assume cs:code code segment start: mov ax, cs mov ds, ax mov si, offset chstr mov es, ax mo ...
- java序列化知识整理
1. 什么是序列化? 序列化就是只把一个对象串行化成一个字节流,用于网络传输或者持久化. 2. 序列化的使用场景? a). 把内存中的对象持久化到文件或者数据库中: b). 对象在网络上传输. 3. ...
- 关于redis扩展安装及使用
11月23日,预留 http://blog.sina.com.cn/s/blog_68431a3b0102v6dz.html http://blog.csdn.net/rachel_luo/artic ...
- Django后台post请求中的csrf token
使用Requests库操作自己的Django站点,post登陆admin页面返回403,serverlog显示csrf token not set. csrf token是get登陆页面时服务器放在c ...