JSP是几年前就接触了,但是用归用,很多实际的意义含义等还是不太明白,借此机会,梳理一下。

1.JSP运行原理:当浏览器web应用服务器请求一个JSP页面时,Web应用服务器将其转换成一个Servlet文件(即一个.java文件),然后将这个Java文件编译成一个字节码文件(集一个.class文件),最后web应用服务器加载转换后的Servlet实例,处理客户端的请求,并返回HTML格式的响应回应给客户端浏览器;

2.JSP指令标识:

  • 页面指令page的使用
<%@ page 属性1=“属性值1” 属性2=“属性值2”……%> · language属性:指定当前页面使用的语言,目前只支持Java · contentType属性:用于设置JSP页面的MIME类型和字符编码,用于显示网页内容; · pageEncoding属性:用于设置JSP页面的编码格式,用于编写阶段的显示; · import属性:用于导入JSP页面中的类包,在JSP页面可以通过嵌入Java代码的方法使用这些类包。
  • 文件包含指令include的使用:它可以将一个JSP页面包含到另一个JSP页面中,从而实现JSP页面的重用。这里的包含是静态包含,即使被包含文件中有JSP代码,在包含时也不会被编译执行,而是将页面组合成一个页面后,再进行编译处理,最后返回结果页面。
  • 引用标签库指令taglib的使用

3. 注释:

  • HTML注释:
<!-- 注释内容<%-表达式%> -->
例如:
<!-- 当前时间:<%=new java.util.Date().toLocalString()%>-->
  • JSP隐藏注释:
<%-- 注释内容 --%>

4. include指令与<jsp:include>动作标识的区别:

表示形式的区别:
<%@include file="top.jsp"%>
<jsp:include page="top.jsp"></jsp:include>
  • include指令通过file属性指定被包含文件,并且file属性不支持任何表达式,<jsp:include>动作通过page属性指定被包含文件;
  • 使用include指令时,被包含文件和包含文件最终编译成一个.java文件再执行,只执行一次。而<jsp:include>当标识被执行时,程序会将请求转发到被包含页面,并将结果输出到浏览器中,然后返回包含页继续执行后面的代码;
  • include指令在包含文件和被包含文件中不能有重名的变量或方法。而在<jasp:include>中重名的变量或代码不会引起冲突。

5. <jsp:forward>请求转发的动作标识:

该动作用于将当前请求转发到其他的web资源(HTML页面、JSP页面、Servlet等)。在执行请求转发后,当前页面将不再继续执行,而是去执行forward指定的页面。

<jsp:forward page="url"/>

请求转发是服务器端的操作,浏览器并不知道请求的是哪一个页面,故其地址栏不会发生变化。

JSP语法,运行机理等的更多相关文章

  1. JSP JSP工作原理 JSP语法 JSP声明 JSP注释 JSP指令 jsp九大隐式/内置对象

    1 什么是JSP   1)为什么说,Servlet是一个动态Web开发技术呢?     Servlet是基于服务端的一种动态交互技术,     HttpServletRequest表示客户端到服务端的 ...

  2. 在MyEclipse中如何去掉JS或jsp语法错误提示!

    在MyEclipse中如何去掉JS或jsp语法错误提示! 关于在 MyEclipse 上 WEB 工程里面的 JS/JSP 经常会有语法错误提示,这是由于 MyEclipse 对其语法要求相当严格所造 ...

  3. JSP语法

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

  4. JSP 语法/标签

    ┣1.declaration Declaration定义了JSP脚本语言使用的变量和函数,这类似于Java中定义全局变量,或可以把它想像成pascal编程语言中的单元文件的interface部分.声明 ...

  5. Jsp语法九大内置对象和四大作用域

    一.JSP 原理:JSP其实就是一个servlet. Servlet负责业务逻辑处理,JSP只负责显示.开发中,JSP中不能有一行JAVA代码 二.JSP语法 1. JSP模板元素:JSP中HTML标 ...

  6. JSP学习笔记(2)-JSP语法

    1.JSP页面的基本结构 (1)HTML标记符(2)JSP标记(3)变量和方法的声明(4)Java程序片(5)Java表达式 2.变量和方法的声明 成员变量和方法 语法:<%! 变量.方法%&g ...

  7. JSP 语法

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

  8. JSP-Runoob:JSP 语法

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

  9. JSP起源、JSP的运行原理、JSP的执行过程

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

  10. javascript编译与运行机理(1)--

    随着学习js的深入就越想了解其内部的运行机理,看了很多文章,感觉下面总结的不错.但囿于个人水平,只是达到了理解层面,还不能提出自己的见解,只好把资料罗列出来,留待以后总结: 1.Javascript的 ...

随机推荐

  1. python -pickle模块、re模块学习

    pickel模块 import pickle #pickle可以将任何数据类型序列化,json只能列表字典字符串数字等简单的数据类型,复杂的不可以 #但是pickle只能在python中使用,json ...

  2. 网站漏洞修复之最新版本UEditor漏洞

    UEditor于近日被曝出高危漏洞,包括目前官方UEditor 1.4.3.3 最新版本,都受到此漏洞的影响,ueditor是百度官方技术团队开发的一套前端编辑器,可以上传图片,写文字,支持自定义的h ...

  3. 002---Linux系统目录结构

    Linux系统目录结构 一切从根(/)开始,一切皆文件. /bin:存放常用的可执行文件 /sbin:存放常用的可执行文件 家目录:存放用户自己的文件或目录 root用户:/root 普通用户:/ho ...

  4. go学习笔记-语言指针

    语言指针 定义及使用 变量是一种使用方便的占位符,用于引用计算机内存地址.取地址符是 &,放到一个变量前使用就会返回相应变量的内存地址. 一个指针变量指向了一个值的内存地址.类似于变量和常量, ...

  5. poj 2393 奶牛场生产成本问题 贪心算法

    题意:有一个奶牛场,第i周的生产成本为c,需要数量为 y,每周的存储成本为s.问怎么安排使得成本最低? 思路: 成本最低是吧?求出每周的最低成本*该周需要的数量就是成本最低 每周的成本有两个:自己本周 ...

  6. DESCRIBEFIELD

    実行時データ型識別.略語は RTTI です.プログラム実行時にデータ型を識別して処理を行う仕組みです.. DESCRIBE FIELD命令を使用 DESCRIBE FIELD命令を使用して.変数のデー ...

  7. Linux系统下安装rz/sz命令

    执行命令 yum install -y lrzsz rz -be本地上传文件到服务器

  8. 20145202马超 2016-2017-2 《Java程序设计》第一次实验

    之前做的(http://www.cnblogs.com/tuolemi/p/5707098.html) 其余的 断点的使用 行断点 条件断点 参考(http://www.cnblogs.com/roc ...

  9. Android开发——View绘制过程源码解析(一)

    )UNSPECIFIED:表示View可以设置成任意的大小,没有任何限制.这种情况比较少见. 2. MeasureSpec的生成过程 2.1 顶级View的MeasureSpec // desired ...

  10. struts2官方 中文教程 系列十二:控制标签

    介绍 struts2有一些控制语句的标签,本教程中我们将讨论如何使用 if 和iterator 标签.更多的控制标签可以参见 tags reference. 到此我们新建一个struts2 web 项 ...