JSP页面中的指令标识

制作人:全心全意

指令标识主要用于设定整个JSP页面范围内都有效的相关信息,它是被服务器解释并执行的,不会产生任何内容输出到网页中。也就是说,指令标识对于客户端浏览器是不可见的。JSP页面的指令标识与我们的身份证类似,虽然公民身份证可以标识公民的身份,但是它并没有对所有见到过我们的人所公开

JSP指令标识的语法格式:

<%@ 指令名 属性1="属性值1" 属性2="属性值2"...... %>

参数说明:

  指令名:用于指定指令名称,在JSP中包含page、include和taglib 3条指令。

  属性:用于指定属性名称,不同的指令包含不同的属性。在一个指令中,可以设置多个属性,各属性之间用逗号或空格隔开

  属性值:用于指定属性值

  • page指令

    page是JSP页面最常用的指令,用于定义整个JSP页面的相关属性,这些属性在JSP被服务器解析成Servlet时会转换为相应的Java程序代码。

    page指令包含的属性有15个

  1. language属性

    该属性用于设置JSP页面使用的语言,目前仅支持Java语言,以后可能会支持其他语言,如C++、C#等,该属性的默认值为Java。

    <%@ page language="Java" %>

 

  2. extends属性

    该属性用于设置JSP页面继承的Java类,所有JSP页面在执行之前都会被服务器解析成Servlet,而Servlet是由Java类定义的,所以JSP和Servlet都可以继承指定的父类。该属性并不常用,而且有可能影响服务器的性能优化

  3. import属性

    该属性用于设置JSP导入的类包。JSP页面可以嵌入Java代码片段,这些Java代码在调用API时需要导入相应的类包。 

    <%@ page import="java.util.*" %>

  

  4.pageEncoding属性

    该属性用于定义JSP页面的编码格式,也就是指定文件编码。JSP页面中的所有代码都使用该属性指定的字符集,如果该属性值设置为ISO-8859-1,那么这个JSP页面就不支持中文字符。通常设置编码格式为GBK,因为它可以显示简体中文和繁体中文。

    <%@ page pageEncoding="utf-8" %>

  

  5. contentType属性

    该属性用于设置JSP页面的MIME类型和字符编码,浏览器会据此显示网页内容。

    <%@ page contentType="text/html;charset=utf-8" %>

    注意:JSP页面的默认编码格式为ISO-8859-1,该编码格式是不支持中文的,要想使页面支持中文需要将页面的编码格式设置为UTF-8或者是GBK的形式

  6. session属性

    该属性指定JSP页面是否使用HTTP的session会话对象。其属性值是boolean类型,可选值为true和false。默认值为true,表示可以使用session会话对象;如果设置为false,则当前JSP页面将无法使用session会话对象。 

    <%@ page session="false" %>

  7. buffer属性

    该属性用于设置JSP的out输出对象使用的缓冲区大小,默认为8KB,且单位只能使用KB。建议程序开发人员使用8的倍数16、32、64、128等作为该属性的属性值。

    <%@ page buffer="128kb" %>

  

  8. autoFlush属性

    该属性用于设置JSP页面缓存满时,是否自动刷新缓存。默认值为true;如果设置为false,则缓存被填满时将抛出异常。

    <%@ page autoFlush="false" %>

  

  9. isErrorPage属性

    该属性可以将当前JSP页面设置成错误处理页面来处理另一个JSP页面的错误,也就是异常处理。这意味着当前JSP页面业务的改变。 

    <%@ page isErrorPage="true" %>

  

  10.errorPage属性

    该属性用于指定处理当前JSP页面异常错误的另一个页面,指定的JSP错误处理页面必须设置isErrorPage属性为true。errorPage属性的属性值是一个url字符串。 

<%@ page errorPage="error/loginErrorPage.jsp" %>

    注意:如果设置该属性,那么在web.xml文件中定义的任何错误页面都将被忽略,而优先使用该属性定义的错误处理页面。

  • include指令

    文件包含指令include是JSP的另一条指令标识。通过该指令可以在一个JSP页面中包含另一个JSP页面。不过该指令是静态包含,也就是所被包含文件中所有内容会被原样包含到该JSP页面中,即使被包含文件中有JSP代码,在包含时也不会被编译执行。使用include指令,最终将生成一个文件,所以在被包含和包含的文件中,不能有相同名称的变量。

    

    include指令的语法格式:

    <%@ include file="path" %>

    说明:该指令只有一个file属性,用于指定要包含文件的路径。该路径可以是相对路径,也可以是绝对路径。但是不可以是通过<%=%>表达式所代表的文件。

    小技巧:在应用include指令进行文件包含时,为了使整个页面的层次结构不发生冲突,建议在被包含页面中将<html>、<body>等标记删除。因为在包含该页面的文件中已经指定了这些标记。

  • taglib指令

    在JSP文件中,可以通过taglib指令标识声明该页面中所使用的标签库,同时引用标签库,并指定标签的前缀。在页面中引用标签库后,就可以通过前缀来引用标签库中的标签。

    taglib指令的语法格式: 

    <%@ taglib prefix="tagPrefix" uri="tagURI" %>

    参数说明:

      prefix:用于指定标签的前缀。该前缀不能命名为jsp、jspx、java、javax、sun、servlet、sunw。

      uri:用于指定标签库文件的存放位置。

JSP页面中的指令标识的更多相关文章

  1. JSP页面中的动作标识

    JSP页面中的动作标识 制作人:全心全意 包含文件标识<jsp:include> 此标识和include指令类似,用于向当前页面中包含其它的文件,且包含的文件可以是动态文件,也可以是静态文 ...

  2. 分别应用include指令和include动作标识在一个jsp页面中包含一个文件。

    分别应用include指令和include动作标识在一个jsp页面中包含一个文件. hello.jsp <%@ page language="java" import=&qu ...

  3. Jsp页面中常见的page指令

    注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6513327323628962312/ 1.<JSP页面实际上就是Servlet> 2.<JSP页 ...

  4. SSI注入--嵌入HTML页面中的指令,类似jsp、asp对现有HTML页面增加动态生成内容,见后面例子

    SSI注入漏洞总结 from:https://www.mi1k7ea.com/2019/09/28/SSI%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E%E6%80%BB%E ...

  5. jsp页面中jstl标签详解

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  6. 【转】jsp页面中jstl标签详解

    原文地址: JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实 ...

  7. jsp页面中jstl标签详解[转]

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  8. Java jsp页面中jstl标签详解

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  9. 在jsp页面中实现格式化数字,百分比,货币

    当时的要求是在jsp页面中计算百分比 实现方法 1.引入Jstl的fmt指令 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" ...

随机推荐

  1. 配置Cocos Code IDE 可以正常运行的组合:jdk,sdk ,ndk, ant, cocos2d-x

    Cocos Code IDE:Cocos Code IDE 1.0.0-RC2 jdk:Cocos Code IDE 自动的jdk sdk:8以上 ndk:r9d(r10有bug),希望以后版本可以修 ...

  2. bzoj3262 陌上花开——CDQ分治

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3262 第一道CDQ分治题! 看博客:https://www.cnblogs.com/Narh ...

  3. linux怎么返回上级目录啊,用cd/命令却这样:bash:cd/:没有那个文件或目录

    多打一个空格键盘又不会坏.cd 空格 .. 是上一级cd 空格 / 是回最高级,也就是 / 相应的cd 空格 ../../abc 就是去上级目录的上级目录里面的 abc 目录里.Linux 里面,所有 ...

  4. jquery easyui 显示和关闭数据加载的遮罩

    $('#yearReportTable').datagrid('loading');//打开等待div $('#yearReportTable').datagrid('loaded');//关闭等待d ...

  5. 【148】DevExpress相关控件使用

    ---------------------------------------------------------------------------------------------------- ...

  6. (转载)基于React与Vue后,移动开源项目Weex如何定义未来

    https://www.ctolib.com/topics-106347.html vuejs+ts+webpack2框架的项目实践 https://mp.weixin.qq.com/s/p2Uc9I ...

  7. Helios Service Release 2安装SVN

    Eclipse Helios Service Release 2安装SVN地址:subclipse http://subclipse.tigris.org/update_1.6.x 1.使用方式:he ...

  8. 04-Vue中的动画

    Vue中的动画 为什么要有动画:动画能够提高用户的体验,帮助用户更好的理解页面中的功能: -使用过渡类名 1.html <div id="app"> <input ...

  9. 最大加权矩形 luogu1719

    题目链接:https://www.luogu.org/problemnew/show/P1719 这道题挺好做的 又是一道练前缀和的题 #include <bits/stdc++.h> # ...

  10. JAXB解析xml 的注解说明

      1.将 xml 文件中的各个节点和属性信息创建对应的Java模型 2.在Java模型中的创建与 xml 文件对应的节点和属性需要用注解来表示@XmlRootElement   将一个Java类映射 ...