jsp代码中包含jsp元素和Template data两类。Template data 指的是jsp引擎不处理的部分,也就是除tsp语法之外的部分,tsp引擎会把这部分信息直接传递出去。
*** jsp的基本语法:两种注释类型、三个脚本元素、三个指令元素、八个动作指令。(2338)***
两种注释类型
- 1,HTML注释
注意:此注释会发送到客户端,但不显示。如果注释中含有表达式<%= %>,则返回的是jsp引擎处理后的内容。```
* 2,JSP注释
``` 格式:<%-- 单行注释 --%> ```
<%/* 多行注释 */>
<%/** 多行注释,可以用javadoc从生成的java文件中提取出来 */>
```注意:不会发送到客户端,被注释标记的字符在jsp编译时会被忽略掉,在希望隐藏和注释掉jsp程序时用 ```
---
##三个脚本元素
* 1,声明
用于声明合法的变量和方法
格式:<%! int i=0; %>
<%! int a,b,c;%>
<%! Date date;%>
* 2,表达式
在运行后被自动转化为字符串,然后插入表达式所在的位置显示
格式:<%= 表达式 %>
<%! int a,b,c;%>
<% a=12;b=a;c=a+b;%>
<b>a=<%=a%></b>
<b>b=<%=b%></b>
<b>c=<%=c%></b>
* 3,脚本段
脚本段用于包含一段有效的java程序段,一个脚本段中可以包含多个jsp语句、方法、变量、表达式
格式:<% 代码 %>
---
## 三个指令元素
* 1 page指令
```用于定义jsp文件中的全局属性
<%@ page
[language = "java"]
[extends="package.class"]
[import= "{package.class | package.*},..."]
[session="true[false]"]
[buffer="none | 8kb |sizekb"]
[autoflush="true | false"]
[isThreadSafe = "true | false"
[info = "text"]
[errorPage= "relativeURL"]
[contentType="mimeType[;charset= characterSet]"|"text/html;charset=ISO-8859-1"]
[isErrorPage="true | false"]
%>
共包含11个属性,择重要的说明:
language:声明脚本语言的种类,目前只能用java
extends:标明jsp编译时需要加入的java class全名,
import:需要导入的java包列表
session:设定客户是否需要HTTP Session,默认为true
errorPage:设置处理异常事件的jsp文件
contentType:charset=ISO-8859-1设置MIME类型是:text/html,默认字符集是ISO-8859-1.
<@ page %>指令作用于整个jsp页面,包括静态包含文件,但不作用于动态包含文件如<jsp:include>
- 2 include指令
语法格式:<%@ include file= "relativeURL"%>或<%@ include file="相对位置"%>
这个包含的过程是静态的(静态包含:就是指这个被包含的文件将会被插入到jsp文件中去,这个被包含的文件可以是jsp文件、html文件、文本文件,大概就这么个意思)
- 3 taglib指令
语法格式:<%@ taglib url="URIToTagLibrary" prefix="tagPrefix"%>
八个动作指令
- 1 页面跳转:<jsp:forward>
<jsp:forward page= "test3.10.1.jsp">
<jsp:param name="username" value="<%=user%>"/>
<jsp:param name="password" value="<%=pwd%>"/>
</jsp:forward>
- 2 包含页面:<jsp:include>
<jsp:include page="scripts/login.jsp" flush="true"/>
<jsp:include page="copyright.html" flush="true"/>
<jsp:include page="/index.html" flush="true"/>
<jsp:include page="scripts/login.jsp" flush="true"/>
<jsp:param name="username" value="smith"/>
</jsp:include>
- 3 创建Bean: <jsp:useBean>
<jsp:userBean id="cart" scope= "session" class="session.Carts"/>
<jsp:setProperty name="cart" property="*"/>
<jsp:useBean id="checking" scope="session" class="bank.Checking">
<jsp:setProperty name="checking" property="balance" value="0.0"/>
</jsp:useBean>
<jsp:useBean>用于定位或实例化一个JavaBean组件,首先会试图定位一个Bean实例,如果不存在,就从一个class或模版中进行实例化
- 4 设置Bean属性:<jsp:setProperty>
<jsp:setProperty name="mybean" property="*"/>
<jsp:setProperty name="mybean" property="username"/>
<jsp:setProperty name="mybean" property="username" value="Steve"/>
- 5 取得Bean属性:<jsp:getProperty>
<jsp:useBean id="calendar" scope="page" class="employee.Calendar"/>
<jsp:getProperty name="calendar" property="username"/>
- 6 使用Applet插件:<jsp:plugin>
<jsp:plugin type=applet code="MediaPlay.class"codebase=:"../classes">
<jsp:params>
<jsp:param name="way" value="Hall"/>
</jsp:params>
<jsp:fallback>
<p>Unable to load applet</p>
</jsp:fallback>
</jsp:plugin>
- 7 插件定义参数:<jsp:param>
<jsp:param name="name" value="value"/>
- 8 插件错误提示:<jsp:fallback>
当<jsp:plugin>插件不能够正常显示时显示提示信息