02-JSP脚本元素指令及动作

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

客户1线程
执行
客户2线程
执行
Java程序片 局部变量
Java程序片 局部变量
操作 操作
成员变量
© 2012 Inspur Group
Inspur Education
JSP 声明
线程同步 • 两种方式实现同步:
使用同步块 synchronized(object) { //要同步的语句 }
使用同步方法 synchronized void methodA() { }
%> </body>
© 2012 Inspur Group
Inspur Education
JSP 声明
JSP 声明的概念 • JSP声明就是在JSP页面中声明Java方法或变量等 (用于定义JSP代表的Servlet类的成员变量和方 法 )。
JSP声明在JSP页面中的表现形式 • < % ! Java 代码 %>
JSP脚本元素包括:
JSP 脚本元素
表达式
Scriptlet
声明
© 2012 Inspur Group
Inspur Education
JSP 表达式
表达式的概念 表达式是对数据的表示,系统将其作为一个值进行
计算和显示 表达式在JSP页面中的表现形式
<%= Java表达式 %>
© 2012 Inspur Group
© 2012 Inspur Group
Inspur Education
include动作
Include动作标记语法格式 • <jsp:include page=“文件的URL”/> 或 • <jsp:include page =“文件的URL”> param子标记 </jsp:include>
...
</html>
© 2012 Inspur Group
Inspur Education
include 指令
Include指令特点: (jsp动作) 这种称为静态包含(在编译之前已经做了处理)----
先将要包含的jsp代码嵌入到相应的jsp页面,然后再统 一转换成一个servlet类。 这种包含不能传参数 包含页面和被包含页面访问的是同一个request内嵌对 象。
Inspur Education
JSP 表达式
使用JSP 表达式进行JSP编程
<body>
表达式
<h1>JSP表达式 </h1>
<b>PI 的值: </b><%=Math.PI %><br />
<b>100,99中最大的值 :</b><%=Math.max(100,99) %><br/>
<b>100,99中最小的值 :</b><%=Math.min(100,99) %><br/>
Inspur Education
本章目标
理解 JSP 脚本元素的组成及语法 使用JSP脚本元素进行JSP编程 理解 JSP 指令的组成及语法 使用JSP各指令进行JSP编程 掌握JSP 标准动作
© 2012 Inspur Group
Inspur Education
JSP 脚本元素
由于都是在一定的格式里嵌入Java代码,因而经常把 “表达式、Scriptlet、声明”都称为脚本元素。
int index = money.indexOf(SEPARATOR); String str =money; if(index==-1) str = money+".00"; return str; } %>
© 2012 Inspur Group
Inspur Education
JSP 指令
(编译指令)相当与在编译期间的命令(换句话说jsp转换成 Servlet过程期间需要用到的指令)
实例演示及讲解 如下图所示:实现一个乘法和除法的计算器(利用jsp
的动态包含和静态包含),进而比较二者的区别和联 系。
© 2012 Inspur Group
Inspur Education
动态include和静态include的区别
© 2012 Inspur Group
Inspur Education
JSP Scriptlet
JSP Scriptlet概念
JSP Scriptlet就是在JSP页面里嵌入一段 Java代码,也称脚本代码段
JSP Scriptlet在JSP页面中的表现形式
<% Java代码 %>
<% String name="tony"; System.out.println(name); %>
2、利用JSP Scriptlet 调用声明的方法,转换金额 2、在JSP页面利用表达式将转换后的金额显示出来
3Байду номын сангаас1
© 2012 Inspur Group
Inspur Education
JSP 声明
<%使! 用JSP声明进行JSP编程
//声明一个常量 final String SEPARATOR ="."; //声明一个方法 public String covertAmountWithSeparator(String money){
Inspur Education
JSP脚本元素指令及动作
© 2012 Inspur Group
Inspur Education
知识点回顾
理解 JSP 理解 JSP 页面的各种构成元素 掌握安装配置JSP运行环境 掌握JSP页面的执行过程 使用Eclipse创建JSP页面
© 2012 Inspur Group
<b>3+2-5的值 :</b><%=3+2-5 %><br/>
<b>(3+2)==5的值 :</b><%=(3+2)==5 %><br/>
<b>(3+2)!=5的值 :</b><%=(3+2)!=5 %><br/>
</body>
© 2012 Inspur Group
Inspur Education
© 2012 Inspur Group
Inspur Education
JSP 声明
使用JSP声明进行JSP编程
需求:某系统计算的金额中有两种形式,一种是带 有两位小数的,另一种是整数,现在要求你在JSP页面 将不带小数的金额转换为带两位小数的金额。
分析:
1、利用JSP声明,声明一个方法,将整数转换为两 位小数
forward动作
forward动作标记语法格式 • <jsp:forward page=“文件的URL”/> 或 • <jsp:forward page =“文件的URL”> param子标记 </jsp:include>
...
<body>
<jsp:forward page="Second.jsp"/>
<body>
<jsp:include page="OtherPage.jsp" flush="true"/>
</body> ...
将其他 JSP 中的内 容或页面嵌入到指 定的页面
page 属性指定其他 页面的地址
© 2012 Inspur Group
Inspur Education
Include 动作
特点:
是动态包含,在运行期间进行嵌套,生成多个servlet类; 包含和被包含的jsp访问的虽然不是同一个request内嵌对象,
但是被包含的jsp文件可以访问包含jsp文件能够访问的参数; 可以传参数;
© 2012 Inspur Group
Inspur Education
Include 动作
<%! int numTimes = 3;
public String sayHello(String name) {
return "Hello, " + name + "!"; } %>
© 2012 Inspur Group
Inspur Education
JSP 声明
当两个或多个线程同时访问同一个共享的变量,并且一 个线程需要修改这个变量时,我们应对这样的问题作出 处理,否则可能发生混乱。
© 2012 Inspur Group
Inspur Education
taglib 指令
taglib指令可以让JSP页面使用标签 • taglib 指令的作用是在JSP页面中,将标签库描述符文件引入 到该页面中,并设置前缀,而去利用标签的前缀去使用标签库 表述文件中的标签
<%@ taglib uri = ”标签库表述符文件” prefix = ”前缀名” %>
errorPage buffer session
表示当前页面能否作为错误页面
定义处理异常的 JSP 页面 设置用来存储客户端请求的缓冲区的大小 用于设置是否需要使用内置的session对象
true或false
errors_url “8KB” “true”
© 2012 Inspur Group
Inspur Education
JSP 指令包括:
JSP 指令
page
include
taglib
JSP 指令的语法为: <%@ 指令名称 属性1="属性值1" 属性2="属性值2" … 属性n="属性值n"%>
© 2012 Inspur Group
Inspur Education
page 指令
Page指令用来定义整个JSP页面的一些属性和这些属性 的值。属性值总是用单引号或双引号括起来。
Inspur Education
JSP 动作标记
JSP 动作包括:
JSP 动作
include
param
forward
plugin
useBean
JSP 动作的语法为: <jsp:动作名称 属性1="属性值1" 属性2="属性值2" … 属性n="属性值n”/>
© 2012 Inspur Group
Page指令格式 • 用一个page指令指定多个属性的值
<%@ page 属性1= “属性1的值” 属性2= “属性2的值” ……%>
• 用多个page指定为每个属性指定值
<%@ page 属性1= “属性1的值” %> <%@ page 属性2= “属性2的值” %> …… <%@ page 属性n= “属性n的值”%>
© 2012 Inspur Group
Inspur Education
JSP Scriptlet
<<bh使o1d>y以用>直J角S三P角形Sc的r形i式pt显l示e数t字进</行h1>JSP编程
<% for(int i=1;i<10;i++) { for(int j=1;j<=i;j++) { out.println(j); } out.println("<br/>"); }
include 指令
include 指令用于在运行时将 HTML文件或 JSP页面嵌 入到另一个 JSP页面(为了代码的重用,写好的jsp页 面可以被所有的其他jsp页面进行引用)
include 指令语法 :<%@ include file = ”文件名” %>
<html> <head> include 指令测试页面 </head> <body> <%@ include file = "/test.html" %> </body>
该属性的作用是为JSP页面引入Java核心包中的 类,可以为该属性指定多个值,值以逗号分隔, 就像在通常的 Java代码中所使用的import语句 那样。
“java” 无
contentType
定义JSP的字符编码方式和JSP页面响应的MIME 类型。
CHARSET= iso-8859-1
isErrorPage
Page指令作用范围
page指令的作用对整个JSP页面有效,与其书写位置无关,但习惯 把page指令写在JSP页面的最前面。
© 2012 Inspur Group
Inspur Education
page 指令
page 指令标记的属性
language import
定义要使用的脚本语言。该属性的值目前只能取 “java”,如果在将来 JSP容器支持多种语言时可 使用它。
Inspur Education
param动作
Param标签以“名字—值”对的形式为其它标签提供附加信息,这 个标签与jsp:include、jsp:forward、jsp:plugin标签一起使用。
param动作标记语法格式 • <jsp:param name=“名字” value=“指定param的值”/>
<html> <body>
<%@ taglib uri ="/mytaglib.tld" prefix="mytags"%>
</body> </html>
JSP 页面在根目录中搜索 mytaglib 标签库描述符文件, 而 mytags 前缀将 mytaglib 中的标签嵌入 JSP 页面
© 2012 Inspur Group
相关文档
最新文档