第六章主要介绍了JSP的相关知识。

1.JSP:是通过在HTML文件中加入java程序片段(Java Scriptlet)和JSP标记,就构成了JSP文件。JSP实质上是Servlet。JSP的API主要位于javax.servlet.jsp包及子包中。

2.当Servlet容器接收到客户端的要求访问特定JSP文件的请求时,容器按照如下流程来处理客户端的请求:

(1).查找与JSP文件对应的Servlet。如果已经存在,就直接调用该Servlet的服务方法;

(2).如果不存在与JSP文件对应的Servlet,则容器会解析文件系统中的JSP文件,并将其翻译成Servlet源文件,接着把Servlet源文件编译成Servlet类,然后再初始化并运行Servlet。将JSP翻译成Servlet源文件并进行翻译成Servlet类的活动,只在客户端首次访问此JSP文件时进行。

3.JSP常用语法总结

(1).JSP指令:位于"<%@" 和 "%>"内,常用指令有page(由属性和值组成,包括:method,import,content_type等常用属性),include(静态包含其他文件的内容),taglib。比如:<%@ page import="java.io.*,java.util.Hashtable" %>,<%@ include file="common.jsp" %>

(2).JSP声明:位于"<%!"和"%>"内,声明的变量为对应Servlet类的成员变量(位于Service(),doGet(),doPost()之外),声明的方法为对应Servlet类的成员方法(位于Service(),doGet(),doPost()之外)。比如:<%! int v1=0; %>

(3).Java程序片段:位于“<%>”和"%>"内。默认这些代码片段位于对应Servlet类的service()方法中。比如: <% String gender="femali"; if(gender.equals("female")) {>

(4).Java表达式:位于"<%="和"%>"内。用来输出值的。表达式中的int或者float类型的值都会被自动转换成字符串后,再进行输出。

(5).注释标记:位于"<%--"和"--%>"内

(6).隐含对象:JSP中默认提供一些保留字符串,代表了一些默认对象。如:request,response,pageContext,application,out,config,page,session,exception

4.JSP生命周期:开发人员可以编写jspInit()和jspDesctory()方法,对应Servlet接口的init()和destory()

5.JSP请求转发:采用<jsp:forward>标签来实现请求转发,转发对象可以是HTML文件,JSP文件或者Servlet。还可以嵌套<jsp:param>标签来传递参数

6.JSP包含:分为静态包含(采用include指令,目标组件可以是HTML文件或者JSP文件,不允许是Servlet)和动态包含(采用<jsp:include>标签,目标组件可以是HTML文件,JSP文件或者Servlet)。静态包含和动态包含的区别,在于Servlet容器对它们的翻译和编译的处理方式不同。

7.JSP异常处理:采用page指令中的 errorPage属性,指定一个处理异常的jsp文件;再采用page指令中的isErrorPage属性,表示某个jsp文件是用来处理异常的。通过调用隐含对象<% exception.printStackTrace(new PrintWriter(out));%>就可以输出异常到客户端了

《TomCat与Java Web开发技术详解》(第二版) 第六章节的学习总结 ---- JSP技术的更多相关文章

  1. Java Web开发之详解JSP

    JSP作为Java Web开发中比较重要的技术,一般当作视图(View)的技术所使用,即用来展现页面.Servlet由于其本身不适合作为表现层技术,所以一般被当作控制器(Controller)所使用, ...

  2. 《Tomcat与Java Web开发技术详解》思维导图

    越想构建上层建筑,就越觉得底层基础很重要.补课系列. 书是良心书,就是太基础了,正适合补课. [纯文字版] Tomcat与Java Web开发技术详解 Servlet Servlet的生命周期 初始化 ...

  3. java web之Filter详解

    java web之Filter详解 2012-10-20 0 个评论 作者:chenshufei2 收藏 我要投稿 .概念: Filter也称之为过滤器,它是Servlet技术中比较激动人心的技术,W ...

  4. java web.xml配置详解(转)

    源出处:java web.xml配置详解 1.常规配置:每一个站的WEB-INF下都有一个web.xml的设定文件,它提供了我们站台的配置设定. web.xml定义: .站台的名称和说明 .针对环境参 ...

  5. 《FPGA设计技巧与案例开发详解-第二版》全套资料包

    本人参与写的一本书(TimeQuest一章由我所写),希望大家多多支持: 全书配套资料上传各大网盘资料中附送大量源码,你值得拥有--<FPGA设计技巧与案例开发详解-第二版>全套资料包-V ...

  6. Java web.xml 配置详解

    在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰. 首先可以肯定的是 ...

  7. java web.xml配置详解

    1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...

  8. 免费的HTML5连载来了《HTML5网页开发实例详解》连载(六)媒体查询

    响应式设计的另一个重要技术手段是媒体查询.如果只是简单的设计一个流式布局系统,那么可以保证每个网格按比例的放大和缩小,但有可能会使得在小屏幕下(如手机设备)网格太小而严重影响阅读,这样的设计称不上响应 ...

  9. 《TomCat与Java Web开发技术详解》(第二版) 第四章节的学习总结--常用Servlet API

    要开发Servlet,自然要掌握常用的servlet的相关API.通过此章节的学习,了解到如下常用API 1.Servlet接口--->GenericServlet抽象类(实现Servlet接口 ...

随机推荐

  1. docker网络及Dockerfile

    1.制作镜像 使用阿里的yum源,网址:https://opsx.alibaba.com/mirror,或者mirrors.aliyun.com,点击帮助,就会有弹框出来. docker pull c ...

  2. JD2

    Business Requirement Support l Develops and communicates plan to manage vendor review of requirement ...

  3. Requirement Analysis

    BRD:Business Requirements Document,商业需求文档.这是产品声明周期中最早的问的文档,再早就应该是脑中的构思了,其内容涉及市场分析,销售策略,盈利预测等,通常是和老大们 ...

  4. Logger Rate Limiter -- LeetCode

    Design a logger system that receive stream of messages along with its timestamps, each message shoul ...

  5. [BZOJ 4031] 小Z的房间

    Link: BZOJ 4031 传送门 Solution: 矩阵树定理的模板题 看完下面两篇文章就会啦: 周冬论文:https://wenku.baidu.com/view/872eb02de2bd9 ...

  6. [CF232E]Quick Tortoise

    题目大意: 给你一个$n\times m(n,m\leq 500)$的格子,有一些是障碍物.从一个格子出发只能向下或向右走,有$q$组询问,每次询问从一个点是否能够到达另一个点. 思路: 分治. 两点 ...

  7. vim 注释取消注释多行

    按下ctrl+v选中多行,按大写I(必须是大写的I)进入编辑模式,输入注释符号如#,最后按下esc退出就完成了 取消注释一样按下ctrl+v选中,按d删除

  8. 新人补钙系列教程之:AS3 与 PHP 简单通信基础

    package { import flash.display.Loader; import flash.events.Event; import flash.net.URLLoader; import ...

  9. How to get the edited text from itext in fabricjs

    https://stackoverflow.com/questions/39286826/how-to-get-the-edited-text-from-itext-in-fabricjs http: ...

  10. Material Design (二),TextInputLayout的使用

    前言  一般登录注冊界面都须要EditText这个控件来让用户输入信息,同一时候我们通常会设置一个标签(使用TextView)和EditText的hint属性来提示用户输入的内容,而设计库中高级组件T ...