JSP指令(page include taglib)
JSP指令指示JSP转换器如何翻译JSP页面到Servlet;JSP指令用来设置整个JSP页面相关的属性,如网页编码方式、脚本语言等
JSP指令的格式:
<%@ directive attribute="value" attribute="value" attribute="value" %>
属性以键值对的形式存在,多个属性用空格分割
常用的三个指令:
<%@ page ... %> page指令控制JSP转换器转换当前JSP页面的某些方面
<%@ include ... %> include指令将其他文件中的内容包含到当前的JSP页面
<%@ taglib ... %> taglib指令用于引入标签库并设置标签库的前缀
page指令
大部分page指令可以出现在页面的任何位置,但当page指令包含contentType或pageEncoding属性时,其必须出现在Java代码发送任何内容之前。这是因为内容类型和字符编码必须在发送任何内容前设定。
page指令可以出现多次,但多次出现的指令属性必须具有相同的属性值,不过import属性例外,多个import属性的属性值效果是累加的。
<%@ page language="Java" %> 定义当前页面的脚本语言类型,JSP2.2中只有一个唯一合法值“Java”。
<%@ page import="..." %> 定义一个或多个当前页面中将被导入和使用的java类型。取值范围为任何包名、类名
<%@ page session="..." %> 定义当前页面是否启用会话管理,True为启用,False为不启用;默认是True。取值范围为True、False
<%@ page buffer="..." %> 定义隐式对象out的缓冲大小,必须以KB后缀结尾。默认是8KB或更大(取决于JSP容器)。该值可以为none,表还没有缓冲,所有数据将直接写入PrintWriter。取值范围为数字KB、none
<%@ page autoFlush="..." %> 定义输出缓冲满时是否自动写入输出流,True为自动,False为不自动,需要调用隐式对象out的flush()方法,若缓冲溢出会抛出异常。取值范围为True、False
<%@ page isThreadSafe="..." %> 定义当前页面是否线程安全,不推荐使用,因为使用该参数后会生成一些Servlet容器已过期的代码。取值范围为True、False
<%@ page info="..." %> 指明JSP信息,该信息可通过调用容器生成的Servlet类的getServletInfo()方法获取。取值范围为任意字符串
<%@ page errorPage="..." %> 指明一个错误页面,当JSP程序抛出一个未捕获的异常时则跳转到该错误页面。取值范围为某个JSP的相对路径
<%@ page isErrorPage="..." %> 标识当前页面是一个错误处理页面。取值范围为True、False
<%@ page contentType="..." %> 定义当前页面隐式对象reponse的内容类型,默认为“text/html”。取值范围为任意有效的文档类型
<%@ page pageEncoding="..." %> 定义当前页面的字符编码,默认为“ISO-8895-1”。
<%@ page isELignored="..." %> 定义是否忽略EL表达式。默认是False。取值范围为True、False
<%@ page extends="..." %> 定义JSP实现类要继承的父类,默认为“HttpJspBase”。
<%@ page deferredSyntaxAllowedAsLiteral="..." %> 定义是否解析字符串中出现的“#{”字符(该字符是EL的起始字符),默认为False。取值范围为True、False
<%@ page trimDirectiveWhitespaces="..." %> 定义是否去除指令前后的空白字符,默认为False。取值范围为True、False
一个例子
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
include指令
将其它文件中的内容包含到当前JSP页面中。一个JSP页面可以包含多个include指令。其语法如下:
<%@ include file="url"%>
url可以是被包含文件的相对路径,也可以被包含文件在服务器上的绝对路径(以“/”开头)
JSP容器处理include指令时,会将include指令替换为所包含文件的内容。(跟C语言中的宏替换类似)
注意,最好指明被包含文件的编码,否则可能会出现中文乱码
一个例子:
<!-- 文件名为:123.jsp -->
<%@ page pageEncoding="utf-8"%>
<hr />
被包含文件的内容
<hr /> <!-- 使用include指令 -->
<html>
<head>
</head>
<body>
<%@ include file="123.jsp"%>
这是一个例子
<%@ include file="123.jsp"%>
</body>
</html> <!-- 效果 -->
<html>
<head>
</head>
<body>
<hr />
被包含文件的内容
<hr />
这是一个例子
<hr />
被包含文件的内容
<hr />
</body>
</html>
taglib指令
用于指明JSP页面内使用的JSP标签库,
taglib只有两个属性:
uri属性用来指定标签文件或标签库的存放位置,
prefix属性用来指定该标签使用的前缀
在JSP页面中使用JSTL库,必须通过以下格式使用taglib指令
<%@ taglib uri="tttp://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="tttp://java.sun.com/jsp/jstl/xml" prefix="x" %>
<%@ taglib uri="tttp://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="tttp://java.sun.com/jsp/jstl/sql" prefix="sql" %>
<%@ taglib uri="tttp://java.sun.com/jsp/jstl/functions" prefix="fn" %>
JSP指令(page include taglib)的更多相关文章
- [原创]java WEB学习笔记16:JSP指令(page,include),JSP标签(forwar,include,param)
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- JSP page include taglib
page include taglib 语法:<%@ 指令名称 属性=值 属性=值 -%> ------------------- page 1.language 默认值java 2.ex ...
- JavaWeb学习笔记--2.jsp指令元素、动作元素、内置对象
目录: 一.指令 1.1 page指令 :page指令有13种属性 1.2 include指令:include指令有1种属性,为file.(注意<%@ include%>和<jsp: ...
- 复习:JSP基本的语法(JSP凝视 + JSP指令 + JSP脚本元素 + JSP动作元素)
JSP原理: 1. 对于每个请求.jsp容器都会创建一个新的线程来处理它: 2. Servlet容器载入jsp后转换成的servlet(.class文件)是常驻内存的,所以对应速度一般比較 ...
- 【JSP】JSP指令
JSP指令 说明: 1.JSP指令用于告知JSP 引擎转译JSP时的转化参数,他们不产生输出信息,只是在JSP的转译和编译期间起作用. 2.JSP指令必须写在规定的格式中: <%@ [go ...
- EL表达式.jsp指令等
1.JSP标准指令:<%@ 标准指令(属性 )%><%@ page %><%@ include %><%@ taglib %> 2.JSP程序代码元素: ...
- JSP指令 & 中文乱码问题
1. JSP 指令: JSP指令(directive)是为JSP引擎而设计的, 它们并不直接产生任何可见输出, 而只是告诉引擎如何处理JSP页面中的其余部分. 2. 在JSP 2.0中,定义了 ...
- Javaweb学习笔记——(十二)——————JSP指令:page指令、include指令、taglib指令,JavaBean,内省,EL表达式
JSP指令JSP指令分类 JSP有三大指令: *page指令 *include指令 *taglib指令 在JSP中没有任何指令是必须的. 但基本上每个JSP都是使用page指令============ ...
- JSP三大指令(Page指令,include指令,taglib指令)
参考文章: https://www.runoob.com/jsp/jsp-directives.html http://c.biancheng.net/view/1458.html https://b ...
随机推荐
- python添加到环境变量
1.命令 vi ~/.bashrc export PATH="/home/tiany/software/python/python3/3.6.1/bin:$PATH" export ...
- orthodb
1.数据库 orthodb数据: odb10v0_levels.tab.gz: NCBI taxonomy nodes where Ortho DB orthologous groups (OGs) ...
- Python教程_简介2
人生苦短,我用Python--Life is short,you need Python. https://www.bilibili.com/video/av14184325/?p=101 Pytho ...
- div 绑定keyup
参考 https://www.cnblogs.com/Struts-pring/p/4290740.html <div tabindex="-1" onkeyup=" ...
- sqoop2问题解决
sqoop:000> show version --serverException has occurred during processing command Exception: org.a ...
- Linux之须知
1.服务器有哪些硬件? 主板,cpu,显卡,内存,硬盘,声卡,网卡 2.内存,CPU,硬盘的作用? cpu是管理与运算.内存:cpu和磁盘之间的缓冲设备,服务器关闭后,数据从内存中释放掉. CPU,电 ...
- 消除游戏源码 Match 3 Jewel Full 298 Levels
Match 3 Jewel Full 298 Levels 一款unity3d编写的消消乐游戏, 关卡丰富,很好玩 下载地址:点击下载
- Camera插件推荐,解锁电影大师级视角控制
相机在游戏中的重要性是不言而喻的,尤其是一些MMORPG或FPS等类型的游戏,相机不仅需要跟随游戏主角进行移动,可能还要随时准备切换焦点,这就要求开发者将游戏相机管理得井井有条,能顺应游戏中可能瞬息发 ...
- http://www.bugku.com:Bugku——备份是个好习惯(http://120.24.86.145:8002/web16/)
看了bugku的这道题,陌生又熟悉. 题目首先说[备份是个好习惯],访问网站只有一串字符,,,,,emmmmm,这句话表明人家经常做备份,所以咯,肯定在网站哪里备份有网页信息.嘻嘻 1 ...
- Netty编解码技术
编解码技术,说白了就是java序列化技术,序列化目的就两个,第一进行网络传输,第二对象持久化. 虽然我们可以使用java进行对象序列化,netty去传输,但是java序列化的硬伤比较多,比如java序 ...