jsp篇 之 指令元素和动作元素
Jsp指令元素分类与书写格式:
书写格式:
<%@ 指令类型 属性="值" .. %>
分类:
【page include taglib】三种。
1,page指令:
errorPage="error.jsp"
如果a.jsp页面中设置了errorPage="error.jsp",那么a.jsp页面在运行时【一旦出错】 就会【自动跳转到error.jsp】里面.
isErrorPage="true"
如果一个页面中设置了isErrorPage="true",那么就表示这个【页面是用来专门显示 错误信息】的页面。
另外在这个页面中【能够使用到隐藏对象exception】来显示出错误的信息.(需要使 用jsp的内置对象)
language属性 language="java"
表示当前页面中的编程语言是java;
目前这个属性值只能写java,不支持其他语言。
contentType属性
contentType="text/html; charset=UTF-8"
设置服务器将来使用io把jsp页面内容输出给浏览器时,使用什么编码向 浏览器输出。
pageEncoding属性
pageEncoding="UTF-8"
设置jsp页面文件保存时候所用的编码
2,include指令
一个页面包含/引入另外一个页面有俩种方式:
静态包含 动态包含。
静态包含基本格式:
<%@ include file="" %>
作用:
在当前页面中使用include指令可以把另外一个页面的内容引入到当前页面。
静态include是先把被包含文件的内容全部复制内嵌到包含文件中,再进行编译运行的,所以b中的变量等不能与a重复,否则会报错
动态包含:
<jsp:include page="foot.jsp">
特点:执行到了include语句的时候才触发被包含文件的编译、执行,并实时把结果包含进来。
动态包含与静态包含的区别?
两者都可以包含进来其他页面;
a. 动态包含是动态标签jsp:include实现
静态包含是由指令元素 <%@ include file="" %>实现;
b. 静态包含原封不动载入;动态包含翻译成方法调用;
c. 静态包含不能传参;动态包含可以传参。
传参出现中文乱码,过滤器可以解决;
动态include与静态include的最大不同在于:包含文件与被包含文件都是先编译执行,再包含。二者的编译阶段是相互独立的,只有在包含文件的include语句处把被包含文件的执行结果包含进来
总结:
静态包含执行效率会更快,但是有可能发生变量冲突的问题。另外使用静态包含如果包含的文件发生了变化的话,所有包含它的servlet都要重新编译更新,这是一个很大的代价。通常情况下使用动态包含比较多。
3,taglib指令
该指令的作用是在当前jsp页面中【引入一些特殊的标签库】.
比如jstl标签库、struts2标签库等。
jsp的动作元素
在jsp文件中,我们之前嵌入的java代码和标签配合出现,整体风格比较乱,不利用改动与维护,且代码量过于庞大。
把常见的一些java代码进行封装,就得到了jsp中的动作标签。
注意:jsp中尽可能不要出现java代码。
Jsp和servlet的联系:
jsp完全可以实现servlet的功能,但实际开发里面并不单独使用一种,还是需要配合使用。
JSP和Servlet分工不同:
Servlet用来接收数据,页面跳转;
jsp用来动态显示页面内容。
jsp篇 之 指令元素和动作元素的更多相关文章
- 牛客网Java刷题知识点之什么是JSP的3大常用指令、JSP的6大哪些动作、JSP中include指令和include动作有什么区别
不多说,直接上干货! JSP的3大常用指令 包含指令(Include directive):用来包含文件和合并文件内容到当前的页面. 页面指令(Page directive):用来定义JSP页面中特定 ...
- JavaWeb学习----JSP脚本元素、指令元素、动作元素
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- JSP脚本元素、指令元素、动作元素
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- JSP基础总结(运行机制、脚本元素、指令元素、动作元素)
JSP的运行机制: 1.转译阶段:JSP页面转换成Servlet类: 2.请求阶段:Servlet类执行,将相应结果发送至客户端. 流程解释: 1.用户访问某个JSP页面 2.服务器找到相应的JSP页 ...
- JavaWeb学习笔记--2.jsp指令元素、动作元素、内置对象
目录: 一.指令 1.1 page指令 :page指令有13种属性 1.2 include指令:include指令有1种属性,为file.(注意<%@ include%>和<jsp: ...
- JSP基本语法总结【1】(jsp工作原理,脚本元素,指令元素,动作元素)
时隔半年,回头对jsp复习整理一下,温故而知新. jsp工作原理: jsp服务器管理jsp页面分两个阶段:转换阶段(translation phase)和执行阶段(execution phase). ...
- JSP--JSP语法--指令---九大隐式对象--四大域对象--JSP内置标签--JavaBean的动作元素--MVC三层架构
一.JSP 原理:JSP其实就是一个servlet. Servlet负责业务逻辑处理,JSP只负责显示.开发中,JSP中不能有一行JAVA代码 二.JSP语法 1. JSP模板元素:JSP中HTML标 ...
- JSP--JSP语法--指令--include(动态包含/静态包含)--九大隐式对象--四大域对象--JSP内置标签--JavaBean的动作元素--MVC三层架构
一.JSP 原理:JSP其实就是一个servlet. Servlet负责业务逻辑处理,JSP只负责显示.开发中,JSP中不能有一行JAVA代码 二.JSP语法 1. JSP模板元素:JSP中HT ...
- JSP中编译指令include与动作指令include的区别
include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改, 否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如 ...
随机推荐
- es6 Moduel 默认名与非默认名
export default default 本质是将后面变量(值)赋给 default,然后以default名称输出. import 在获取default变量时,写在大括号的外面 ,可自定义名称. ...
- .NET下对Web.config与App.Config的增删改操作的代码
把代码过程常用的内容做个收藏,下边代码段是关于 .NET下对Web.config与App.Config的增删改操作的代码. <?xml version="1.0" encod ...
- QT多线程的使用
今天给大家介绍三种QT里面使用多线程的方法 1.继承QThread并且重写run方法来实现多线程 #ifndef MYQTHREAD_H #define MYQTHREAD_H #include &l ...
- 理解java的三种代理模式
代理模式是什么 代理模式是一种设计模式,简单说即是在不改变源码的情况下,实现对目标对象的功能扩展. 比如有个歌手对象叫Singer,这个对象有一个唱歌方法叫sing(). 1 public class ...
- 初级c++编码规范
想了很久,第一篇文章还是应该写编码规范好一点.编码规范是一个仁者见仁的问题,为了避免复杂庞大,自己总结了一套简单版本的规范. 简介 本文介绍一份自己使用的C++编码规范.第一次正式进入 ...
- SQL Server 数据库部分常用语句小结(一)
1. 查询某存储过程的访问情况 SELECT TOP 1000 db_name(d.database_id) as DBName, s.name as 存储名字, s.type_desc as 存储类 ...
- c/c++ 重载运算符 函数调用运算符
重载运算符 函数调用运算符 把一个类的对象a,当成函数来使用,比如a(),所以需要重载operator()方法.重载了函数调用运算符的类的对象,就是函数对象了. 还有什么是函数对象呢??? lambd ...
- c/c++ 多线程 unique_lock的使用
多线程 unique_lock的使用 unique_lock的特点: 1,灵活.可以在创建unique_lock的实例时,不锁,然后手动调用lock_a.lock()函数,或者std::lock(lo ...
- GitHub下载克隆clone指定的分支tag代码
需求描述: 这边有很多tag分支版本的代码,我想克隆下载指定版本到我服务器上面 例如:我想下载tag:1.4.1的代码 解决方法: 命令:git clone --branch [tags标签] [gi ...
- LeetCode算法题-Minimum Moves to Equal Array Elements(Java实现)
这是悦乐书的第233次更新,第246篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第100题(顺位题号是453).给定大小为n的非空整数数组,找到使所有数组元素相等所需的 ...