jsp01
jsp(java server pages),运行在客户端,java语言作为脚本。
jsp组成:
1.模板元素:html、xml
2.注释元素:(1)html注释,显示在客户端源码中,<!-- 注释 -->
(2)jsp注释,不会显示在客户端源码,只在jsp中,<% -- 注释 --%>
(3)单行注释与多行注释,单行//,多行/** 注释 */
3.指令元素:page,include,taglib
4.脚本元素:(1)声明,<%! 方法或者变量%>,被转换成servlet中的实例属性和实例方法
(2)表达式,<%=%>,例:<%="hello" %>,相当于jsp中的out.println("hello"),转化成servlet中的out.print("hello" );
(3)scriptlets,<% %>,多个scriptlets合成一个被包含在servlet的service方法中
5.动作元素:<jsp:param>,<jsp:include>,<jsp:forward>,<jsp:useBean>,<jsp:setProperty>,<jsp:getProperty>,<jsp:plugin>
jsp基础语法:
jsp声明:一个声明语句可以声明一个或多个变量、方法,供后面的Java代码使用。在JSP文件中,必须先声明这些变量和方法然后才能使用它们。
jsp声明的语法格式:
<%! declaration; [ declaration; ]+ … %>
或者,也可以编写与其等价的XML语句:
<jsp:declaration>
代码片段
</jsp:declaration>
程序示例:
<%! int i = 0; %>
<%! int a, b, c; %>
jsp表达式:一个JSP表达式中包含的脚本语言表达式,先被转化成String,然后插入到表达式出现的地方。由于表达式的值会被转化成String,所以可以在一个文本行中使用表达式而不用去管它是否是HTML标签。表达式元素中可以包含任何符合Java语言规范的表达式,但是不能使用分号来结束表达式。
jsp表达式的语法格式:<%= 表达式%>,
或者,也可以编写与其等价的XML语句:<jsp:expression>
代码片段</jsp:expression>
程序示例:
<html>
<head></head>
<body>
<h1>
<%! String msg = "Hello";%>
<%= msg %>
</h1>
</body>
</html>
运行后得到以下结果:
Hello
jsp指令:用来设置与整个JSP页面相关的属性
jsp指令语法格式:
<%@ directive attribute=”value” %>
指令 | 描述 |
---|---|
<%@ page … %> | 定义页面的依赖属性,比如脚本语言、error页面、缓存需求等等 |
<%@ include … %> | 包含其他文件 |
<%@ taglib … %> | 引入标签库的定义,可以是自定义标签 |
jsp行为:JSP行为标签使用XML语法结构来控制servlet引擎。它能够动态插入一个文件,重用JavaBean组件,引导用户去另一个页面,为Java插件产生相关的HTML等等。
行为标签只有一种语法格式,它严格遵守XML标准:
<jsp:action_name attribute=”value” />
语法 | 描述 |
---|---|
jsp:include | 用于在当前页面中包含静态或动态资源 |
jsp:useBean | 寻找和初始化一个JavaBean组件 |
jsp:setProperty | 设置 JavaBean组件的值 |
jsp:getProperty | 将 JavaBean组件的值插入到 output中 |
jsp:forward | 从一个JSP文件向另一个文件传递一个包含用户请求的request对象 |
jsp:plugin | 用于在生成的HTML页面中包含Applet和JavaBean对象 |
jsp:element | 动态创建一个XML元素 |
jsp:attribute | 定义动态创建的XML元素的属性 |
jsp:body | 定义动态创建的XML元素的主体 |
jsp:text | 用于封装模板数据 |
jsp隐含对象:
对象 | 描述 |
---|---|
request | HttpServletRequest类的实例 |
response | HttpServletResponse类的实例 |
out | PrintWriter类的实例,用于把结果输出至网页上 |
session | HttpSession类的实例 |
application | ServletContext类的实例,与应用上下文有关 |
config | ServletConfig类的实例 |
pageContext | PageContext类的实例,提供对JSP页面所有对象以及命名空间的访问 |
page | 类似于Java类中的this关键字 |
exception | Exception类的对象,代表发生错误的JSP页面中对应的异常对象 |