第四章 深入JSP技术
JSP简介
JSP工作原理 JSP是一种servlet,但先部署后编译。
JSP生命周期 运行时只会有一个实例,同servlet。
JSP语法
- JSP元素和模板数据 模板数据就是JSP中的HTML代码,元素就是Java部分以及JSP指令(Directive)与JSP标签(Tag)。
- JSP脚本 JSP脚本必须用<% %>括起来。
- JSP输出 <%= %>可输出各种类型数据,注意变量后没有分号";"。
- JSP注释 除了java注释外,还可用<%-- --%>
- JSP方法 JSP可以声明方法和变量,但不能在<%-- --%>中直接声明。需要使用<%! %>。

- JSP的if语句 if语句中可以包含html语句,此时只需将所有的java语句用<% %>括起来。
- JSP的return语句 JSP中使用return语句可以终止程序运行。(包括return语句后面的java代码和html语句都会被忽略)
- JSP的break语句 跳出循环,继续执行外层代码。
JSP指令
JSP指令用于声明JSP页面的属性(文档类型,编码方式),用<%@ %>表示。
1.page指令


2.include指令





3.taglib指令

JSP行为

1.<jsp:include/>行为


注意区别<%@ page include="URI">与<jsp:include/>。
2.使用Java Bean(POJO)







使用<jsp:setProperty name="person" property="*"/>,自动获取request中的值并放入对象person中去。


3.scope实现计数器
通过对上述Java Bean实例对象设置不同的scope,可实现不同计数功能。比如写一个计数类,在JSP中实例化,并设置scope为application,则该对象在整个web应用内斗有效,通过调用计数类的函数,即可统计访问web应用的次数。具体代码如下:


当执行<jsp:getProperty name="totalCount" property="count" />时,会自动执行totalCount对象的方法getCount()来获取count属性值。
4.<jsp:plugin/>嵌入Applet






5.<jsp:forward/>行为


6.<jsp:directive/>行为

JSP隐藏对象
不同于servlet中某些对象需要通过response或request获取(如response.getWriter()),JSP内置9个隐藏对象可直接使用。分别为out,request,response,config,session,application,page,pageContext,exception.
1.out输出对象


2.request对象

3.response对象


4.config配置对象

5.session对象

6.applicat应用程序对象

7.page页面对象

8.pageContext页面对象

9.exception异常对象


JSP配置

<jsp-config/>


EL表达式


隐藏对象


EL表达式的运算



第四章 深入JSP技术的更多相关文章
- JSP Web第四章整理复习 JSP技术基础
P104 JSP简介 (1)基本概念:jsp技术.jsp.jsp网页组成 JSP技术基础java servlet和整个java体系的Web服务器端开发技术. JSP表示它是用java写的Web服务页面 ...
- 05 技术内幕 T-SQL 查询读书笔记(第四章)
第四章 子查询:在外部查询内嵌套的内部查询(按照期望值的数量分为,标量子查询 scalar subqueries,多值子查询multivalued subqueries)(按照子查询对外部查询的依赖性 ...
- java的JSP技术
java的JSP技术 [toc] 1.JSP简介 Jsp技术是用来开发java web的页面显示的,所有MVC模型里面的视图层,所以视图层的开发 jsp不是编程语言,三个英文是java server ...
- 《Entity Framework 6 Recipes》中文翻译系列 (20) -----第四章 ASP.NET MVC中使用实体框架之在MVC中构建一个CRUD示例
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 第四章 ASP.NET MVC中使用实体框架 ASP.NET是一个免费的Web框架 ...
- 《Entity Framework 6 Recipes》中文翻译系列 (21) -----第四章 ASP.NET MVC中使用实体框架之在页面中创建查询和使用ASP.NET URL路由过虑
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 4.2. 构建一个搜索查询 搜索数据是几乎所有应用的一个基本功能.它一般是动态的,因 ...
- 精通Web Analytics 2.0 (6) 第四章:点击流分析的奇妙世界:实际的解决方案
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第四章:点击流分析的奇妙世界:实际的解决方案 到开始实际工作的时候了.哦耶! 在本章中,您将了解到一些最重要的网络分析报告,我将 ...
- Servlet,jsp,JSP技术 ,JSP编程
一.Servlet 思考 1 浏览器可以直接打开JAVA/class文件吗? 不可以 2浏览器可以打开HTML.JS 文件吗? 可以 3 JAVA程序可以生成HTML文件吗?可以的,用IO流. 4 ...
- KnockoutJS 3.X API 第四章 表单绑定(11) options绑定
目的 options绑定主要用于下拉列表中(即<select>元素)或多选列表(例如,<select size='6'>).此绑定不能与除<select>元素之外的 ...
- Java Web之JSP技术
JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术.JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比htm ...
随机推荐
- MongoDB安装及启动
本机环境系统:Debian 9桌面系统:KDE Plasma ## 官网下载自己系统最新稳定版 https://www.mongodb.com/download-center#community 选择 ...
- keil编译运行错误,缺少error:#5:#include "core_cm3.h"
用Keil vision5编译时出现以下错误:error: #5: cannot open source input file "core_cm3.h": No such fi ...
- 20155338 ch02 ch03课下作业
20155338 ch02 ch03课下作业 要求: 1.补充完成课上测试(不能只有截图,要有分析,问题解决过程,新学到的知识点) 课上测试-3-ch02 1.编写一个程序 "week060 ...
- 优步uber司机不能绑定银行卡问题
很多新加入的优步车主都发现现在不能绑定银行卡,不能绑定就收不到车费呀!现在优步公司给出的绑定地址是:http://ubercd.sojump.com/jq/4853671.aspx 但是提交后没有反映 ...
- day3 RHCE
10.配置NFS服务 在server0配置NFS服务,要求如下: 以只读的形式共享目录/public同时只能被example.com域中的系统访问. 以读写的形式共享目录/protected同时只能被 ...
- tidb测试环境安装,离线部署
1.环境以及规划 机器:centos7.5 ; 文件系统为ext4:内存16g:cpu8核,共三个节点: ip hostname roles --- tidb tipd tikv --- tidb t ...
- 19、Java并发编程:线程间协作的两种方式:wait、notify、notifyAll和Condition
Java并发编程:线程间协作的两种方式:wait.notify.notifyAll和Condition 在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作.比如说最经典的生产者-消费者 ...
- 网络基础知识-bps、Bps、pps的区别
在计算机科学中,bit是表示信息的最小单位,叫做二进制位:一般用0和1表示.Byte叫做字节,由8个位(8bit)组成一个字节(1Byte),用于表示计算机中的一个字符.bit(比特)与Byte(字节 ...
- moment.js使用方法总结
Moment.js是一个轻量级的JavaScript时间库,它方便了日常开发中对时间的操作,提高了开发效率.日常开发中,通常会对时间进行下面这几个操作:比如获取时间,设置时间,格式化时间,比较时间等等 ...
- katalon系列九:DEBUG调试功能
Katalon Studio做为一个IDE,具有和其他IDE一样的Debug功能,可以让我们方便的调试代码.将脚本切换到Script模式,在你想设断点的行首双击,或右击选择:(Groovy)Toggl ...