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的 ...
随机推荐
- loushang框架的开发中关于BSP的使用,将写好的功能模块部署到主页界面结构上
前言: 当我们已经开发好相应的模块或者功能的时候,需要将这个功能部署在index主页上作为可点击直接使用的模块,而不是每次需要去浏览对应的url地址. 这时候就需要运用到L5的BSP. 作为刚刚入门l ...
- tp5多条件查询
->where('m.user_nickname|w.nickname|c.companyname','like','%'.$search.'%')\
- Oracle数据库之 PL SQL 学习笔记
1.定义基本变量: 2.引用型的变量: set serveroutput on declare pename emp.ename%type; psal emp.sal%type; begin ...
- 多线程编程之Apue3rd_Chapter11之互斥锁_读写锁_自旋锁
学习了apue3rd的第11章,主要讲的是多线程编程.因为线程共享进程的资源比如堆和全局变量,多线程编程最重要的是,使用各种锁进行线程同步. 线程编程首先要学习的三个函数如下: #include &l ...
- Kubernetes-运维指南
Node隔离与恢复 cat unschedule_node.yaml apiVersion: kind: Node metadata: name: k8s-node-1 labels: kuberne ...
- CS61B sp2018笔记 | Lists
Lists csdn同作者原创地址 1. IntLists 下面我们来一步一步的实现List类,首先你可以实现一个最简单的版本: public class IntList { public int ...
- python2.7入门---字符串
这次咱们就来看一下python的字符串类型.首先我们要知道,字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串.创建字符串很简单,只要为变量分配一个值 ...
- vue2018年5月报错No parser and no file path given
mac电脑直接: rm -rf node_modules rm package-lock.json npm install npm install prettier@~1.12.1 执行完这四个命令, ...
- 复制MySQL数据库A到另外一个MySQL数据库B(仅仅针对innodb数据库引擎)
方案一:(不用太大的变化my.ini文件) copy 原数据库A中的 数据库(database) ib_logfile1 ib_logfile0 ibdata1: 关闭目的数据库B: 备份 ...
- Java中的原生数据类型
Java中的原生数据类型(Primitive DataType)共有8种: 1)整型: 使用int表示(32位).2)字节型: 使用byte表示(从-128到127之间的256个整数).3)短 ...