一、解析JSP页面代码组成
1.<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8"%>
这是一个page指令,指定了页面的内容类型:contentType="text/html; charset=UTF-8" ;编码方式:charset=UTF-8;导入的jar包:import="java.util.*"
2.HTML代码
二、JSP声明
语法格式:
1.<%! 数据类型 变量 = X; %>
2.<%! 数据类型 变量 1, 变量2, 变量n; %>
3.<%! 类 对象 = new 类(); %>
三、JSP注释(记忆口诀:感叹号看得见,百分号百分百看不见)
1.客户端可见:<!--我是注释,客户端可见 -->
2.客户端不可见:<%-- 这是注释,客户端不可见--%>
四、JAVA代码
1.<% JAVA代码 %>
2.表达式:<%=表达式%>【注意,表达式不能有分号结尾】
五、九大内置对象
request,response,out,session,application,config,pageContext,page,Exception
六、JSP行为
1.【用于在当前页面中包含静态或动态资源】<jsp:include page="{relativeURL | <%= expression%>}" flush="true" />or<jsp:include page="{relativeURL | <%= expression %>}" flush="true" ><jsp:param name="parameterName" value="{parameterValue | <%= expression %>}" /></jsp:include>
2.【寻找和初始化一个JavaBean组件】
<jsp:useBean id="id" scope="page|request|session|application" class="XXX"/>
【在scope属性指定的作用域使用指定的名称(id属性值)定位Bean对象】
3.【设置 JavaBean组件的值】
(1)<jsp:setProperty name = "JavaBean实例名" property = "*"/>
(2)<jsp:setProperty name = "JavaBean实例名" property = "JavaBean属性名" />
(3)<jsp:setProperty name = "JavaBean实例名" property = "JavaBean属性名" value = "BeanValue"/>
(4)<jsp:setProperty name = "JavaBean实例名" property = "propertyName" param = "request对象中的参数名"/>
4.【将 JavaBean组件的值插入到 output中】
<jsp:getProperty name=”x” property=”x”/>
【Name:表示Bean的名字 Property:表示提取哪一个属性的值。】
5.【用于在生成的HTML页面中包含Applet和JavaBean对象】
<jsp:plugin>
type="bean | applet"
name="Applet名称"
code="java类名"
codebase="Java类所在目录"
align="对齐方式"
height="高度"
width="宽度"
hspace="水平间距"
vspace="垂直间距"
archive="预先加载的类列表"
jreversion="JRE版本"
iepluginurl="URL"
nspluginurl="URL"
</jsp:plugin>
6.【动态创建一个XML元素】
<jsp:element name="employee">
<jsp:attribute name="name">x</jsp:attribute>
<jsp:body>x是xxx</jsp:body>
</jsp:element>
执行后:
<employee name="x">x是xxx的xxx</employee>
7.【定义动态创建的XML元素的属性】
<jsp:attribute trim="true | false">
xxxxx
</jsp:attribute >
【<jsp:attribute>有两个属性:name 和trim。其中name 的值就是标签的属性名称。trim 可为true 或false。假若为true 时,<jsp:attribute>本体内容的前后空白,将被忽略;反之,若为false,前后空白将不被忽略。trim 的默认值为true】
8.【从一个JSP文件向另一个文件传递一个包含用户请求的request对象】
<jsp:forward page="xxx">
</jsp:forward>
9.【用于封装模板数据】
jsp:text
10.【定义动态创建的XML元素的主体】
<jsp:body></jsp:body>
七、JSP指令
1.<%@ page ... %>
【定义页面的依赖属性,比如脚本语言、error页面、缓存需求等等】
2.<%@ include ... %>
【包含其他文件】
3.<%@ taglib ... %>
【引入标签库的定义,可以是自定义标签引入标签库的定义,可以是自定义标签】