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篇 之 指令元素和动作元素的更多相关文章

  1. 牛客网Java刷题知识点之什么是JSP的3大常用指令、JSP的6大哪些动作、JSP中include指令和include动作有什么区别

    不多说,直接上干货! JSP的3大常用指令 包含指令(Include directive):用来包含文件和合并文件内容到当前的页面. 页面指令(Page directive):用来定义JSP页面中特定 ...

  2. JavaWeb学习----JSP脚本元素、指令元素、动作元素

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. JSP脚本元素、指令元素、动作元素

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  4. JSP基础总结(运行机制、脚本元素、指令元素、动作元素)

    JSP的运行机制: 1.转译阶段:JSP页面转换成Servlet类: 2.请求阶段:Servlet类执行,将相应结果发送至客户端. 流程解释: 1.用户访问某个JSP页面 2.服务器找到相应的JSP页 ...

  5. JavaWeb学习笔记--2.jsp指令元素、动作元素、内置对象

    目录: 一.指令 1.1 page指令 :page指令有13种属性 1.2 include指令:include指令有1种属性,为file.(注意<%@ include%>和<jsp: ...

  6. JSP基本语法总结【1】(jsp工作原理,脚本元素,指令元素,动作元素)

    时隔半年,回头对jsp复习整理一下,温故而知新. jsp工作原理: jsp服务器管理jsp页面分两个阶段:转换阶段(translation phase)和执行阶段(execution phase). ...

  7. JSP--JSP语法--指令---九大隐式对象--四大域对象--JSP内置标签--JavaBean的动作元素--MVC三层架构

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

  8. JSP--JSP语法--指令--include(动态包含/静态包含)--九大隐式对象--四大域对象--JSP内置标签--JavaBean的动作元素--MVC三层架构

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

  9. JSP中编译指令include与动作指令include的区别

    include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改, 否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如 ...

随机推荐

  1. 视频拉流 Linux安装FFmpeg

    1 下载最新源码包并解压 $ wget http://ffmpeg.org/releases/ffmpeg-3.1.3.tar.bz2 $ tar jxvf ffmpeg-.tar.bz2 2安装ya ...

  2. spring----bean的使用

    这篇文章不介绍spring的相关概念,只记录一下springbean的创建方式和使用方式. 一.bean的创建和调用 1.创建演示需要用到的类:Student.Teacher.Person packa ...

  3. Dynamics CRM教程:图表的Top设置及导出修改和导入

    关注本人微信和易信公众号: 微软动态CRM专家罗勇,回复144或者20150412可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! 上一篇博客制作的图表放在Dashb ...

  4. AEAI HR开源人力资源管理v1.6.0发版公告

    1 升级说明 AEAI HR v1.6.0版是AEAI HR v1.5.2版人力资源管理系统的升级版本,本次升级的系统是基于AEAI DP 3.8.0_20170228进行打包部署的,升级内容主要是针 ...

  5. Android TV端的(RecyclerView)水平滚动焦点错乱问题

    package com.hhzt.iptv.ui.customview; import android.content.Context;import android.content.res.Typed ...

  6. 新版的nuget包 PackageLicense 这样写

    Intro 最近编译类库项目的时候发现总是有个 licenseUrl 的警告,警告信息如下: warning NU5125: The 'licenseUrl' element will be depr ...

  7. (办公)plug-in org.eclipse.jdt.ui was unable to load class org.eclipse.jdt.internal

    今天上午开发环境遇到这个问题,解决方案如下,(解决了之后,项目并没有丢失.) 因为Eclipse的这个plug-in org.eclipse.jdt.ui was unable to load cla ...

  8. dotnet core 入门命令

    官方资料: https://docs.microsoft.com/zh-cn/dotnet/core/tools/dotnet-restore?tabs=netcore2x 常规 项目引用 NuGet ...

  9. vs2015启动崩溃,wpfgfx_v0400.dll加载D3DCompiler_47.dll失败

    有一段时间没有用vs2015,今天一启动就crash,尝试了以下办法: 1. 卸载掉这段时间安装的一些软件和vs插件 2. 修复安装 3. 卸载.重新安装vs2015 sp2版本 4. devenv. ...

  10. c/c++ 网络编程 UDP 改变网卡的硬件地址

    网络编程 UDP 改变网卡的硬件地址 在程序里动态改变网卡的硬件地址 1,取得网卡的硬件地址 #include <stdio.h> #include <string.h> #i ...