第三章_JSP

3.1、JSP概述

Jsp页面实在jsp容器中运行的。Servlet容器一般也是JSP容器。例如,Tomcat就是一个Servlet/JSP容器。

第一次请求一个jsp页面时,Servlet/JSP容器要做两件事情:

1、将JSP页面转换成一个JSP页面实现类,这是一个实现javax.servlet.jsp.JspPage接口或其子接口javax.servlet.jsp.HttpjspPage的java类,JspPage是javax.servlet.Servlet的子接口,这样就会使每个jsp页面都成为一个Servlet。

2、如果转换成功,Servlet/JSP容器将会编译Servlet类。

3.2、备注

Jsp页面可以使用两种备注:

1、jsp备注。说明该页面的作用

2、HTML/XHTML备注。这些将被发送到浏览器。

JSP备注以<%--开头,以--%>结束。例如,下面就是一个JSP备注:

<%-- retrieve products to display --%>

JSP备注不会被发送到浏览器,也不能进行嵌套。

HTML/XHTML备注不是由容器进行处理,而是被发送到浏览器。HTML/XHTML备注的用途之一是标识JSP页面:

<!-- this is /jsp/store/displayProducts.jspf -->

在处理带有许多JSP片段的应用程序时,这个特别有用。开发者通过查看浏览器的HTML源代码,可以轻松查出某个HTML代码部分生成了哪个JSP页面或者哪个片段。

3.3、隐式对象

Jsp中存在9个隐式对象:request、response、out、session、application、config、pageContext、page、Exception。

3.4、指令

指令是第一种jsp句法元素,其指示jsp转换器应该如何将某个jsp页面转换成Servlet的命令。最重要的是这两个:page和include。

3.4.1、page指令

Page指令的语法如下:

<%@ page attrubute1=”value1” attribute=”value2” ...%>

@和page之间的空格是可选的,attribute1、attribute2等都是page指令的属性。下面是page指令的属性列表:

import。指定要导入的一种或多种java类型,供本页的java代码所用。例如:import=”java.util.List”。

session。值为true时,表示这个页面参与session管理;值为false时,表示不参与session管理。默认值为true,意味着如果之前还没有javax.servlet.http.HttpSession实例,那么调用JSP页面将始终会创建一个。

buffer。指定隐式对象out的缓冲区大小,以千字节为单位。

autoFlush。默认值为true,表示当缓冲区满时,杯缓存的输出应该自动刷新。值为false时,表示只有在调用隐式对象response的flush方法时,才进行刷新缓冲区。因此,当缓冲区溢出时会抛出一个异常。

第三章_JSP

时间: 2024-08-10 23:16:53

第三章_JSP的相关文章

构建之法前三章读后感

一. 软件作为一个产品,在提供用户使用前经历了许多工序,我们用工程的方式将开发软件的工序,过程加以工程化,系统化.成立了一套完整的体系后,有利于帮助我们开发软件,乃至于大型的系统. 软件具有一定的特殊性,使得软件工程师们做开发提升了一定的难度,但软件工程有助于软件系统的开发,帮助工程师们设计,构建,测试和维护软件.所以,软件工程的最终目的是帮助工程师们创造“足够好”的软件,提高软件的质量,用户满意度,可靠性,可维护性等. 第一章问题:怎么才算是一个真正的软件工程师? 二.   一个优秀的软件,通

0320 《构建之法》前三章观后感

第一章.为我们解释什么是软件,什么是软件工程,读完这章对这些概念有一定的认识这章让我明白,代码不能盲目的敲,好的软件并非两三天,并非一两个人就能赶出来的,需要大家的精诚合作.同时,在编写程序之前,还需要做一系列的分析.设计,要满足客户的需求,后续还要对软件进行测试.维护等.在这之前,我一直觉得能把程序运行,能有正确的结果,那就完成任务了,可这只是整个软件流程的一部分而已.看了邹老师的书,才知道其实创新有很多的方面,除了技术,还有商业思路,差异化等等,这些都给了我很大的感触,作为一名程序员,我们不

家庭作业——第三章

第三章家庭作业    3.69和3.70 3.69 A:long trace(tree_ptr tp)    {        long ret = 0;        while(tp != NULL)        {           ret = tp->val;           tp = tp->left;        }        return ret;    } B:作用是从根一直遍历左子树,找到第一个没有左子树的节点的值. 3.70 A:long traverse(t

第三章 Linux操作系统的安装

第三章 Linux操作系统的安装 因为笔者一直都是使用CentOS,所以这次安装系统也是基于CentOS的安装.把光盘插入光驱,设置bios光驱启动.进入光盘的欢迎界面. 其中有两个选项,可以直接按回车,也可以在当前界面下输入 linux text 按回车.前者是图形下安装,可以动鼠标的,后者是纯文字形式的.建议初学者用前者安装.直接回车后,出现一下界面: 这一步是要提示你是否要校验光盘,目的是看看光盘中的安装包是否完整或者是否被人改动过,一般情况下,如果是正规的光盘不需要做这一步操作,因为太费

《C#高级编程》【第三章】对象和类型 -- 学习笔记

在看过C++之后,再看C#的面向对象感觉就不难了,只是有一些区别而已. 1.类定义 使用class关键字来声明类,其和C++不同的地方是在大括号之后不需要冒号 class 类名 { //类的内部 } //C++这里有一个冒号,而C#没有 2.类成员 3.字段与属性 首先我们先区分一下C#数据成员中的字段.常量与事件成员.字段.常量是与类的相关变量.事件是类的成员,在发生某些行为时(如:改变类的字段或属性,或进行某种形式的用户交互操作),它可以让对象通知调用方. 那么现在我们在来看看字段与属性,属

标准库》第三章 包装对象和Boolean对象

第三部分  标准库 ***************第三章   包装对象和Boolean对象******************* 一.包装对象的定义[1]有人说,JavaScript语言"一切皆对象",数组和函数本质上都是对象,就连三种原始类型的值--数值.字符串.布尔值--在一定条件下,也会自动转为对象,也就是原始类型的"包装对象". 所谓"包装对象",就是分别与数值.字符串.布尔值相对应的Number.String.Boolean三个原生对象

2017.06.29数据挖掘基础概念第二.三章

第二章21.研究的属性类型标称属性:值是一些符号或事物的名称,代表某种类型.编码或状态二元属性:是一种标称属性,只有两个类别或状态,又称布尔属性序数属性:是一种属性,其可能的值之间具有有意义的序或秩评定,但是相续值之间的差是未知的数值属性:是定量的,即他是可度量的量,可用整数或实数值表示(区间和比率标度)22.数据散布常见的度量量(数据如何分散的方法/识别离群点)极差 四分位数.四分位数极差.五数概括图.方差和标准差23.审视数据的图形条形.饼图.线图.分位数图.分位数-分位数图.直方图和散点图

杨森翔:春节文化大观上编 第三章 春节古诗词 目录 第一节:春节诗词概述 一、 除夕诗词概述 二、元日诗词概述 三、 元宵诗词概述 第二节:春节古诗词拾萃

杨森翔:春节文化大观上编 第三章 春节古诗词 目录 第一节:春节诗词概述 一. 除夕诗词概述 二.元日诗词概述 三. 元宵诗词概述 第二节:春节古诗词拾萃 一.腊祭诗词 二.祭灶诗词 三.除夕诗词 四.元旦诗词 五.人日诗词 六.元宵诗词 第一节:春节古诗词概述 中国的春节,作为除旧迎新的节日,时间相当长,从年前的腊月二十三,天空中就似乎弥漫了节日的气息.这种节日的气氛,在保持传统风俗较好的地方,甚至会持续到二月二龙抬头的时候,但欢度春节的高潮,应该说是自除夕始一直到上元之夜.因此,历代歌咏和反

Android艺术开发探索第三章————View的事件体系(下)

Android艺术开发探索第三章----View的事件体系(下) 在这里就能学习到很多,主要还是对View的事件分发做一个体系的了解 一.View的事件分发 上篇大致的说了一下View的基础知识和滑动,现在我们再来聊聊一个比较核心的知识点,那就是事件分发了,而且他还是一个难点,我们更加应该掌握,View的滑动冲突一直都是很苦恼的,这里,我们就来一起探索一下 1.点击事件的传递规则 我们分析的点击事件可不是View.OnClickListener,而是我们MotionEvent,即点击事件,关于M