JSP语法,运行机理等
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语法,运行机理等的更多相关文章
- JSP JSP工作原理 JSP语法 JSP声明 JSP注释 JSP指令 jsp九大隐式/内置对象
1 什么是JSP 1)为什么说,Servlet是一个动态Web开发技术呢? Servlet是基于服务端的一种动态交互技术, HttpServletRequest表示客户端到服务端的 ...
- 在MyEclipse中如何去掉JS或jsp语法错误提示!
在MyEclipse中如何去掉JS或jsp语法错误提示! 关于在 MyEclipse 上 WEB 工程里面的 JS/JSP 经常会有语法错误提示,这是由于 MyEclipse 对其语法要求相当严格所造 ...
- JSP语法
第3章 JSP语法 [本章专家知识导学] JSP是建立在Java语言基础上的一种Web程序设计语言,具有自己特有的用法和指令.本章首先介绍JSP页面的程序结构,然后讲述JSP程序中经常用到基本的面向 ...
- JSP 语法/标签
┣1.declaration Declaration定义了JSP脚本语言使用的变量和函数,这类似于Java中定义全局变量,或可以把它想像成pascal编程语言中的单元文件的interface部分.声明 ...
- Jsp语法九大内置对象和四大作用域
一.JSP 原理:JSP其实就是一个servlet. Servlet负责业务逻辑处理,JSP只负责显示.开发中,JSP中不能有一行JAVA代码 二.JSP语法 1. JSP模板元素:JSP中HTML标 ...
- JSP学习笔记(2)-JSP语法
1.JSP页面的基本结构 (1)HTML标记符(2)JSP标记(3)变量和方法的声明(4)Java程序片(5)Java表达式 2.变量和方法的声明 成员变量和方法 语法:<%! 变量.方法%&g ...
- JSP 语法
JSP 语法 本小节将会简单地介绍一下JSP开发中的基础语法. 脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达式,只要它们在脚本语言中是有效的. 脚本程序的语法格式: <% 代 ...
- JSP-Runoob:JSP 语法
ylbtech-JSP-Runoob:JSP 语法 1.返回顶部 1. JSP 语法 本小节将会简单地介绍一下JSP开发中的基础语法. 脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达 ...
- JSP起源、JSP的运行原理、JSP的执行过程
JSP起源 在很多动态网页中,绝大部分内容都是固定不变的,只有局部内容需要动态产生和改变. 如果使用Servlet程序来输出只有局部内容需要动态改变的网页,其中所有的静态内容也需要程序员用Java程序 ...
- javascript编译与运行机理(1)--
随着学习js的深入就越想了解其内部的运行机理,看了很多文章,感觉下面总结的不错.但囿于个人水平,只是达到了理解层面,还不能提出自己的见解,只好把资料罗列出来,留待以后总结: 1.Javascript的 ...
随机推荐
- php常见面试(Smarty及相关知识)
1.Smarty简介: 是一种php模板引擎,它分开了后台程序和前台页面内容,使程序员和美工分工合作.还有其它模版引擎实现同样的目的. 2.Smarty使用: 建立php文件: 包含smarty类文件 ...
- Learning Experience of Big Data:The First Day-Try to set up a network connection on my virtural machine
After we install our virtual machine,the first thing we should do is to set up a network connection ...
- python学习——基本数据类型
一.运算符 1.算术运算: 2.比较运算 3.赋值运算 4.逻辑运算 5.成员运算 二.基本数据类型 1.数字 1.1 整形数字和长整形数字:在32位机器上,整数的位数为32位,取值范围为-2**31 ...
- Python3爬虫(四)请求库的使用requests
Infi-chu: http://www.cnblogs.com/Infi-chu/ 一.基本用法: 1. 安装: pip install requests 2. 例子: import request ...
- docker学习(一) 安装
一.什么是docker 参见https://baike.baidu.com/item/Docker/13344470?fr=aladdin 个人的理解是,通俗来说,就是相当于一个方便携带且个体独立的虚 ...
- c/c++指针传参
首先要理解参数传递,参数传递分值传递,指针传递,引用传递.(就我自己理解,就是把实参对形参进行赋值) 值传递: 形参是实参的拷贝,改变形参的值并不会影响外部实参的值.从被调用函数的角度来说,值传递是单 ...
- Dubbo原理及配置
技术交流群:233513714 Dubbo的背景 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进 ...
- shell -- sed用法
sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换.删除.新增.选取等特定工作,下面先了解一下sed的用法sed命令行格式为: sed ...
- Struts2(七.删除和修改用户功能的实现)
一.删除功能 之前跳转用户列表的时候把用户id,用户名,用户密码存入了ActionContext 1.userlist.jsp <%@ page language="java" ...
- NLP系列-中文分词(基于词典)
中文分词概述 词是最小的能够独立活动的有意义的语言成分,一般分词是自然语言处理的第一项核心技术.英文中每个句子都将词用空格或标点符号分隔开来,而在中文中很难对词的边界进行界定,难以将词划分出来.在汉语 ...