** 动态页面技术 **
* ASP : Active Server Page -->Microsoft ---> IIS
*
PHP : --> Apache [
mysql]
* JSP : -->
j2ee web server
** JSP **
&; 向客户端返回动态的文本格式的
文档内容
&; 采用面向请求请求和相应的HTTP协议
&; 可以混合采用Html代码,java程序代码以及JSP特有的标签
&; 可以访问相应的组件
** JSP 项目构建 **
* Web Server : Apache Tomcat 5.5
* Web Project : estorejsp
* 创建文本文件 : hello.jsp , 不要放置在WEB-INF下,其他目录都可以
* 在第一行加入
<%@page contentType="text/html;charset=utf-8" %>
* 添加相应的HTML代码 和 JSP代码
<%="Hello World"%>
* Tomcat -- work -- catalina --- localhost -- 项目名称[编译后.java和.class Servlet文件]
** JSP 内部结构
* JSP 由如下元素构成的
* 模板元素: HTML标签
* 注释元素:
* 指令元素 directive
* 脚本元素 scriptlet -- Java代码
* 动作元素 action
** JSP Elements // JSP 的元素 **
1
JSP 页面的组成
由以下几类元素构成
2 注释
*
HTML * <%-- comments here --%> 隐藏注释,不生成页面内容
* Scriptlet注释 : <% // comment %>, <%/** comment */%>
3 模版元素
* 指 JSP文件中出现的静态HTML文本或者XML内容+XSL+XSLT
4 脚本元素 java代码
* 声明 为servlet声明成员变量或者方法,
也可以重写jsp引擎父类的方法
<%! String name=""; %>
<%! public String getName(){return name;}%>
就是在页面中声明合法的成员变量和成员方法。
* 表达式 输出字符串内容到页面
就是位于 <%= 和 %>之间的代码,通常是变量或者是有返回类型的方法
* Scriplets
就是位于<% 和 %>之间的,合法的java代码,如逻辑业务代码。
5 指令元素 出现在<%@ 和 %> 之间
* page 指令,用于定义JSP文件的全局属性
<%@ page [language="java"] //声明脚本语言采用Java,目前只能是Java
[import="java.util.ArrayList"] //导入其它包中的java类文件
[contentType="text/html;charset=GBK"] //页面的格式和采用的编码,格式见MIME类型
[session="{true|false}"] //这个页面是否支持Session,即是否可以在这个页面中使用Session
[buffer="none|8kb|size kb]"] //指定到客户端的输出流采用的缓冲大小
[autoFlush="true|false"] //如果为true,表示 当缓冲区满了,到客户端的输出会自动刷新,如果为false,则抛出异常
[isThreadSafe="true|false"] //如果为true,表示一个JSP页面可以同时处理多个用户的请求,否则只能一次处理一个。
[pageEncoding="encodingStr"] //页面的字符编码
[isELIgnored ="true|false"] //是否支持EL表达式语言 "${}"
[isErrorPage="true|false"] //该页面是否为错误信息页面,如果是则可以直接使用exception对象。
[errorPage="page_url"] //页面出现错误后,跳转的页面 与[isErrorPage]不能同时出现]
[info="description"] //有关页面的描述信息
[extends="package.class"] //继承了什么样的类
%>
常见的格式 <%@page contentType="text/html;charset=GBK" language="java" %>
<%@page import="java.util.ArrayList"%>
* include 指令,将指定位置上的资
源代码包含到当前页面中,称为静态包含,在编译时就要包含进来
随同当前的页面代码一同进行编译。
<%@include file="file_url"%>
* taglib 指令,JSP页面中使用自定义或者别人提供好的标签文件
<%@ taglib uri="tld_url" prefix="prefix_name"%>
6 动作元素
*
xml:namespace prefix = jsp />
//在JSP页面中创建一个javabean的实例,并可以存放在相应的Context范围之中
&;
常用的属性是:id 和 class
* 嵌套在标签体中,用来设置javaBean的实例中的