JSP基本语法

在传统的HTML页面文件中嵌入脚本语言和JSP标签就构成了一个JSP页面文件。一个JSP页面可有5中元素组合而成。

HTML页面内容

JSP注释

JSP指令

JSP脚本元素

JSP动作元素

1、JSP注释:

1、JSP注释有两种,一种是可以在客户端显示的注释,称为HTML注释。

表示形式:  <!-- 注释内容 -->

2、一种是发送到服务器端,在客户端不能显示的注释,称为JSP注释。

表示形式:  <%--注释内容--%>

2、JSP指令:

JSP指令用来向JSP引擎提供编译信息。可以设置全局变量,如声明类、要实现的方法和输出内容的类型。一般的,JSP指令在整个页面范围内有效,且并不向客户端产生任何输出。所有的JSP指令都只在当前的整个页面中有效。与其书写的位置无关,一般写在最前面。

JSP指令有3类,分别是:

page指令

include指令

taglib指令

1、  page指令称为页面指令,用来定义JSP页面的全局属性,该配置会作用于整个JSP页面。page指令用来指定所使用的脚本语言、导入指定的类及软件包等。

2、include指令是文件加载指令,用于在JSP文件中插入一个包含文本或代码的文件。它把文件插入后与原来的JSP文件合并成一个新的JSP页面。还需要注意的是,如果被插入的文件发生了变化,则包含这个文件的JSP文件需要被重新编译。

3、taglib指令用来引用标签库并设置标签库的前缀。这个指令允许JSP页面使用用户自定义的标签,它也可以为标签库命名,标签在这个库中定义。

taglib有2个属性,uri用来指定标签文件或标签库的存放位置,prefix用来指定该标签库所使用的前缀。

3、JSP脚本元素:

脚本元素是JSP中使用最频繁的元素,通过JSP脚本可以将Java代码嵌入到HTML页面中,所有可执行的Java代码,都可以通过JSP脚本来实现。

JSP脚本元素主要包含如下三种类型:

JSP声明语句

JSP表达式

JSP Scriptlets

1、JSP声明语句用于声明变量和方法。使用JSP声明语句声明变量时需要在”<%!”和”%>”标记之间放置Java变量的声明语句。变量的类型可以是Java语言中所提供的任意数据类型。使用JSP声明语句声明的变量将来会转换成Servlet类中的成员变量,这些变量在整个JSP页面中都有效,因此也被称为JSP页面的成员变量。声明的方法在整个JSP页面有效,方法内声明的变量只在方法内有效。

实际上,JSP页面最终会编译成Servlet类,而在容器中只会存在一个Servlet类的实例。在JSP中声明的变量时成员变量,它只在创建Servlet实例时被初始化一次,此后该变量一直保存,直到Servlet实例被销毁掉。

2、JSP表达式,即在”<%=”和”%>”标记之间插入一个表达式,这个表达式必须能够求值,并且计算结果以字符串的形式发送到客户端显示出来。JSP表达式的值会作为HTML页面的内容。

如果表达式的值是一个字符串,则将表达式的值直接显示在页面上,否则会先将表达式转换为字符串。

三、JSP动作元素

JSP动作元素用来控制JSP的行为,执行一些常用的JSP页面动作。通过动作元素可以实现使用多行Java代码能够实现的效果,如动态插入文件、重用JavaBean组件、自定义标签等。

JSP中的动作元素主要包含下面7个:

<jsp:include>
    <jsp:forward>
    <jsp:param>
    <jsp:plugin>
    <jsp:useBean>
    <jsp:setProperty>
    <jsp:getProperty>

JSP实用教程——第二章:JSP语法相关推荐

  1. JSP实用教程第二章-JSP语法

    目录 前言 2.1 JSP页面的基本结构 2.2声明变量和定义方法 2.2.1 声明变量 2.22 定义方法和类 2.3Java程序片 2.4Java表达式 2.5 JSP中的注释 2.6 JSP指令 ...

  2. JSP实用教程——第二章JSP语法

    目录 2.1 JSP页面的基本结构 2.2 声明变量和定义方法 2.2.1 声明变量 2.2.2 定义方法和类 2.3 Java程序片 2.4 Java表达式 2.5 JSP指令标记 2.5.1 pa ...

  3. java web JSP实用教程第二章

    JSP页面的基本结 普通的HTML标记和JavaScript标记<!-JSP指令标记--> JSP标记,如动作.指令标记<% @  %> 变量的方法和声明<%!  %&g ...

  4. LLVM 极简教程: 第二章 实现语法分析器和AST

    第二章 实现语法分析器和AST 原文: Implementing a Parser and AST 本章简介 欢迎进入"用LLVM开发新语言"教程的第二章.在本章中,我们将以第一章 ...

  5. java2实用教程--第二章基本数据类型与数组

    基本数据类型--浮点类型 public class Example2_1 {public static void main (String args[]) {char chinaWord = '好', ...

  6. JSP实用教程-第三章Tag文件与Tag标记

    目录 3.1 Tag文件 3.1.1Tag文件的结构 3.1.2Tag文件的保存 3.2 Tag标记 3.2.1 Tag文件和Tag标记 3.2.2 Tag标记的使用 3.2.3 Tag标记的运行原理 ...

  7. javascript进阶教程第二章对象案例实战

    javascript进阶教程第二章对象案例实战 一.学习任务 通过几个案例练习回顾学过的知识 通过案例练习补充几个之前没有见到或者虽然讲过单是讲的不仔细的知识点. 二.具体实例 温馨提示 面向对象的知 ...

  8. 乐行学院Redis5学习教程 第二章 redis5远程访问及工具Redis Desktop Manager使用

    乐行学院Redis5学习教程 第二章 redis5远程访问工具Redis Desktop Manager 检查服务器端口和防火墙 Redis Desktop Manager介绍 Redis Deskt ...

  9. Etcd教程 — 第二章 Etcd集群静态发现

    Etcd教程 - 第二章 Etcd集群静态发现 一.Etcd集群安装方式 二.Etcd集群静态发现 2.1 静态启动的方式 ※2.2 单机搭建Etcd集群 2.2.1 安装 goreman工具 2.2 ...

最新文章

  1. 好书速递 | FPGA原理和结构
  2. TThread深入分析
  3. 深入掌握JMS--转
  4. spring mvc后端校验validator
  5. php 微信获取code,微信网页授权接口为什么获取不到code(已解决)
  6. sizeof运算符和size_t类型比较
  7. mysql数据库备份oss_Linux(CentOS7)设置自动备份数据库到阿里云OSS(示例代码)
  8. c#控制IE浏览器自动点击等事件WebBrowser,mshtml.IHTMLDocument2 .
  9. jenkins-启动和关闭服务
  10. PMP试题 | 每日一练,快速提分 9.3
  11. windows下把SD卡格式化成NTFS格式
  12. golang程序员前景怎么样?Python、Java、go语言的优势互比
  13. 教你快速搭建个人网站
  14. Php网站手机能wifi上不了,解决手机能连上WIFI却上不了网故障
  15. 基于PaddlePaddle实现的目标检测模型SSD
  16. Calcite优化规则之ProjectAggregateMergeRule
  17. 不要小看 WebSocket!长连接、有状态、双向、全双工都是王炸技能
  18. 秀一段《易语言》的源代码
  19. 猫眼爬虫三-终极篇:破解滑动验证,动态字体加密
  20. 自动驾驶技术中常用英文单词及缩略语整理

热门文章

  1. 如涵定格3.4美元退市:投资人“三折”下车,成败均系张大奕一身
  2. FPGA自学笔记(二)仿真文件tb
  3. badfail@qq.com+java_Java KeeperException.BadArgumentsException方法代码示例
  4. jmeter断言操作详解
  5. ArcGIS:如何利用栅格数据进行路径网络分析-可达性分析?
  6. 阿里移动安全陈树华:安全的最高境界是无感知
  7. MySQL之建表时[Err] 1050 - Table ‘users‘ already exists异常解决方法
  8. Security Best Practices+Klocwork
  9. android循环遍历assert,AppCrawler自动遍历工具
  10. 怎么开启微信蓝牙服务器,微信加群,电脑蓝牙怎么打开,教你一个最简单的方法...