一、JSP页面中的凝视

(1)HTML凝视

<!-- comment [ <%=expression %> ] -->

能在client显示的一种凝视,标记内的全部JSP脚本元素、指令和动作正常运行,也就是说编译器会扫描凝视内的代码行。

(2)Java凝视(隐式凝视)

<% //comment%>

<%/*comment  */ %>

(3)JSP凝视(隐式凝视)

<%--comment--%>

注意:用隐藏凝视标记的字符会在JSP编译时被忽略掉,标记内的全部JSP脚本元素、指令和动作都将不起作用。 JSP编译器不会对凝视符之间的语句进行编译的。它不会显示在客户的浏览器中。

二、JSP脚本元素

<%! %> (声明)

在此Scriptlet中能够定义全局变量、方法和类

<%= %> (表达式)

主要功能是输出一个变量或者一个详细内容

<% %>(脚本程序)

在此Scriptlet中能够定义局部变量。编写语句等

1.声明<%! %>

在JSP文件里,一次能够声明一个或多个变量和方法,它们之间用分号隔开。

在声明时使用JAVA语言时,必须符合JAVA语言规范。

注意:

变量必须先声明,然后才干使用;

声明必须以分号结尾。

通过page指令导入的包中已声明的变量或方法,能够在主JSP文件里直接使用它们;

JSP页面成员变量是被全部用户共享的变量。不论什么用户对JSP页面成员变量操作的结果,都会影响到其它用户。

2. 表达式<%= %>

表达式标签能包括符合JAVA语言规范的不论什么有效表达式;

表达式用于求值,然后其值转化为字符串,并且插入在JSP文件里显示该表达式的地方。

不能使用分号作为表达式的结尾,然而,在脚本段<%……%>标签中,表达式要求以分号作为结尾。

3. 脚本程序<% %>

在脚本段能声明多个变量和方法。

能使用不论什么有效的表达式;

能够包括不论什么有效的程序片段。仅仅要合乎java本身的标准语法就可以;

<% %>不能嵌套使用;

在<% %>之间不能插入HTML。

三、JSP指令元素(directives)

指令( directives )主要用来提供整个JSP页面网页相关的信息,而且用来设定JSP网页的相关属性。比如网页的编码方式、语法、信息等。

起始符号:

<%@

终止符号:

%>

内文部分:一些指令和一连串的属性设定

<%@ directive{attribute="value"} %>

四、设置文件编码

contentType的charset是指server发送给client浏览器时所见到的网页内容的编码 ,pageEncoding是指jsp文件自身存储时所用的编码。

在JSP标准的语法中,假设pageEncoding属性存在。那么JSP页面的字符编码方式就由pageEncoding决定,否则就由contentType属性中的charset决定,假设charset也不存在,JSP页面的字符编码方式就採用默认的ISO-8859-1 。

五、JSP动作元素

include动作:<jsp:include>元素同意包括动态和静态文件,这两种文件产生的结果是不尽同样的。

假设包括的是静态文件,那么仅仅是将静态文件的内容加到JSP网页中;假设包括进来的为动态文件。那么这个被包括的文件也会被JSP容器编译运行。

语法:

<jsp:include page="{urlSpec |<%=expression%>}" flush="true | false"/>

<jsp:include page="{urlSpec |<%=expression%>}" flush="true | false"/>

<jsp:paramvalue={"value" |"<%=name%>" } name="name"/>*

</jsp:include>

<jsp:include>有两个属性:page和flush。page:能够代表一个相对路径。即所包括进来的文件位置或是经过表达式运算出的相对路径;flush:接受的值为boolean,如果为true,缓冲区满时。将会被清空。默认值为false。

<jsp:param>用来传递一个或多个參数给JSP网页。

include指令标记是先将JSP页面与所要嵌入的页面合并成一个新的JSP页面,然后再由JSP引擎将新页面转化为Java文件处理并执行。

include动作标记在把JSP页面转译成java文件时,并不合并两个页面;而是在java文件的字节码文件被载入运行时。才去处理include动作标记引入的文件。

forward动作

<jsp:forward>的定义:将client所发出来的请求。从一个JSP网页转交给还有一个JSP网页。

语法:

<jsp:forwardpage={"URL" | "<%=expression%>"}/>

<jsp:forward page ={"URL"|"<%=expression%>"}>

<jsp:param value={"value"|"<%=name%>" } name="name" />

</jsp:forward>

假设加上<jsp:param>标签,就行向目标文件传递參数或值。

属性:page。page的值,能够是一个相对路径,即所要又一次导向的网页地址。也能够是经过表达式运算出的相对路径。

该动作属于server端跳转。

JSP语法基础(一)的更多相关文章

  1. JAVA 入门第一章(语法基础)

    本人初学java 博客分享记录一下自己的学习历程 java我的初步学习分为六章,有c和c++的基础学起来也简便了很多. 第一章 语法基础 第二章 面向对象 第三章 常用工具类 第四章 文件操纵 第五章 ...

  2. JSP语法

    第3章  JSP语法 [本章专家知识导学] JSP是建立在Java语言基础上的一种Web程序设计语言,具有自己特有的用法和指令.本章首先介绍JSP页面的程序结构,然后讲述JSP程序中经常用到基本的面向 ...

  3. JSP(1)—基础知识

    JSP(1)-基本知识 起源 在很多动态网页中绝大多数网页都是固定不变的只有局部内容需要动态产生和改变,如果使用Servlet程序来输出只有局部内容需要动态改变的网页,其中所有的的静态内容,也需要程序 ...

  4. JSP 语法

    JSP 语法 本小节将会简单地介绍一下JSP开发中的基础语法. 脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达式,只要它们在脚本语言中是有效的. 脚本程序的语法格式: <% 代 ...

  5. JavaWeb:JSP技术基础

    JavaWeb:JSP技术 快速开始 介绍 JSP全称Java Server Pages,是一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开头以%> ...

  6. JSP-Runoob:JSP 语法

    ylbtech-JSP-Runoob:JSP 语法 1.返回顶部 1. JSP 语法 本小节将会简单地介绍一下JSP开发中的基础语法. 脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达 ...

  7. JSP Web第四章整理复习 JSP技术基础

    P104 JSP简介 (1)基本概念:jsp技术.jsp.jsp网页组成 JSP技术基础java servlet和整个java体系的Web服务器端开发技术. JSP表示它是用java写的Web服务页面 ...

  8. python基础入门一(语法基础)

    作为自己正式接触并应用的第一门编程语言,在Alex和武sir两位大王的要求下,开始了写博客总结的日子.学习编程语言是很有趣的一件事情,但有2点请一定要谨记:1.做人靠自己,码代码也必须靠自己.能不能成 ...

  9. PHP语法基础

    1.PHP语法基础 PHP标记符 <?php ?> 常亮与变量 $a = 10; 变量 可以在运行过程中修改 $a = 10; $a = 20; $b = 5; echo $a+$b; c ...

随机推荐

  1. JAVA学习(一)——基本语法

    tips:前端开发写惯了弱类型语言,再来学强类型语言,真的是被各种修饰符.类型声明给整的云里雾里,而且java语法和javascript语言差别还是很大的,所以做好笔记,把一些需要注意的地方记下来是非 ...

  2. 运输层协议——UDP

    UDP概述: UDP只是做了运输层协议能做的最少工作,仅做了复用/分解,少量的差错检验. UDP是无连接的. UDP优点: 关于何时.发送什么数据的应用层控制更为精细:TCP在拥堵时会遏制发送方的发送 ...

  3. 进阶《Python高性能编程》中文PDF+英文PDF+源代码

    入门使用高性能 Python,建议参考<Python高性能编程>,例子给的很多,讲到高性能就会提到性能监控,里面有cpu mem 方法的度量,网络讲了一点异步,net profiler 没 ...

  4. Swift学习笔记(10)--枚举

    1.定义语法: enum SomeEnumeration { // enumeration definition goes here } 2.使用 enum CompassPoint { case N ...

  5. cogs 1755. 爱上捉迷藏

    1755. 爱上捉迷藏 ☆   输入文件:kadun.in   输出文件:kadun.out   简单对比时间限制:0.001 s   内存限制:2 MB [背景] 乃们都玩过赛尔号吧……,那有木有玩 ...

  6. 整合struts2+spring+hibernate

     一.准备struts2+spring+hibernate所须要的jar包:        新建web项目并将jar包引入到project项目中. 二.搭建struts2环境        a.在 ...

  7. 搭建个人博客 方式2 使用jekyll

    孙广东  2016.3.12 环境安装:1.通过 RailsInstaller  来安装 Ruby https://www.ruby-lang.org/zh_cn/documentation/inst ...

  8. 解决QML开发中ComboBox中一个已选择项没有清除的问题

    解决QML开发中ComboBox中一个已选择项没有清除的问题 近期使用QML开发一个项目.须要使用ComboBox进行显示.当进行一个操作时,须要向ComboBox加入一个元素,当进行另外一个操作时. ...

  9. view-activity跟控件在onkey事件上的传递关系

    android 中Activity跟View对于键盘的监听,主要有以下几个方法 //按键按下 public boolean onKeyDown(int keyCode, KeyEvent event) ...

  10. RTP 和 RTSP的区别

    RTP(Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输协议.RTP被定义为在一对一或一对多的传输情况下工作.其目的是提供时间信息和实现流同 ...