JSP指令和JSP动作

JSP指令和JSP动作

一、JSP
page指令
   在JSP中,主要有3种类型的指令:page、include、taglib。page指令允许我们通过类的导入、serlvet超类的定制、内容类型的设置、以及诸如此类的事物来控制servlet的结构。page指令可以放在文档中任何地方,可以定义下面这些大小写敏感
属性:import、contentType、pageEncoding、session、isELIgnored(只限JSP2.0)、buffer、autoFlush、info、errorPage、isErrorPage、isThreadSage、language和extends。

import
   
<%@ page import="package.class1,...,package.classN"
%>
   
import是page的属性中唯一允许在同一文档中多次出现的属性。尽管page指令可以出现在文档中的任何地方,但一般不是将import语句放在文档顶部附近,就是放在相应的包首次使用之前。

contentType和pageEncoding
   
<%@ page contentType="MIME-TYPE" %>
   
和下面的scriptlet所起到的作用基本相同。
    <%
response.setContentType("MIME-TYPE"); %>
   
两者的区别有两点:
   
1.response.setContentType使用明确的Java代码,这是一些开发人员力图避免的使用方式。
   
2.response.setContentType能够有条件地调用,而page指令不能。条件性地设置内容的类型主要用在同一内容能够以多种不同的形式进行显示的情况下。
   
常用的MIME类型:
   
application/msword           
Word文档
   
application/pdf              
PDF文件
    application/vnd.ms-excel      Excel电子表格
   
application/vnd.ms-powerpoint PowerPoint演示文稿
   
text/html
    image/gif
   
如果希望同时更改内容的类型和字符集,可以使用下面的语句:
    <%@ page
contentType="someMimeType; charset=someCharacterSet" %>
   
但是如果只想改变字符集,使用pageEncoding属性更为简单。
   
日语JSP页面使用下面的语句:
    <%@ page
pageEncoding="Shift_JIS" %>

errorPage和isErrorPage属性
    
errorPage属性指定页面专用的错误页面,如果要为整个WEB应用指定错误页面,或者为应用中不同类型的错误指定错误处理页面,则需要使用web.xml中的error-page元素。
    
<%@ page errorPage="Relative URL" % >
    
<%@ page isErrorPage="true" %>

二、jsp:include 动作和
include指令
    <jsp:include
page="relative-path-to-resource"/>
    <%@ include
file="Relative URL"%>

jsp:include 动作和 include指令根本性的区别在于被调用的时间不同
jsp:include
动作,在请求期间将其他页面的输出包含进来。包含的内容为页面的输出。
include指令,在主页面转换成servlet之前,将JSP代码插入其中。包含的内容为文件的实际内容。

jsp:include
动作,在被包含页面发生更改时,无需对主页面做出修改。
jsp:include 动作和
include指令根本性的区别在于被调用的时间不同

jsp:include
动作注意事项:不要将完整的HTML文档作为被包含页面,诸如DOCTYPE,BODY等标签,被包含页面中只能含有适合于出现在文件插入点处的HTML标签。
    
对于文件包含,应该尽可能地使用jsp:include动作。仅在所包含的文件中定义了主页面要用到的字段和方法,或者所包含的文件设置了主页面的响应报头时,才应该使用include指令(<%@
include ....%>)

include指令提供的其他功能:

include指令允许所包含的文件中含有影响主页的JSP代码,比如响应报头的设置和字段的定义。例如,假定snippet.jsp含有下面的代码:
       
<%! int accessCount = 0; %>
   
这种情况下,可以在主页中执行下面的任务:
    <%@ include
file="snippet.jsp"%>
    <%= accessCount++
%>
当然,使用jsp:include时这是不可能的,因为accessCount变量未定义;主页面不能成功的转换成servlet、

时间: 2024-10-29 19:11:17

JSP指令和JSP动作的相关文章

day12(jsp指令&内置对象&动作标签、JavaBean、EL表达式&函数库)

day12 JSP指令 JSP指令概述 JSP指令的格式:<%@指令名 attr1="" attr2="" %>,一般都会把JSP指令放到JSP文件的最上方,但这不是必须的. JSP中有三大指令:page.include.taglib,最为常用,也最为复杂的就是page指令了. 2 page指令 page指令是最为常用的指定,也是属性最多的属性! page指令没有必须属性,都是可选属性.例如<%@page %>,没有给出任何属性也是可以的!

JSP 指令

1.JSP指令从jsp向web容器发送消息,用来设置页面的全局属性,不向客户端输出任何内容 2 page指令 language属性,指明页面脚本用的语言:<%@page language="java"%> import属性.向jsp页面引入包,可引入多个:<%@page import="java.util.*"%> session属性,制定是否支持回话,默认为true,若false的话就不能正常使用session作为内置对象 errorPag

[原创]java WEB学习笔记16:JSP指令(page,include),JSP标签(forwar,include,param)

本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 ---------------------------------

javaweb之jsp指令

1.JSP指令简介 JSP指令是为JSP引擎设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分. 在JSP 2.0规范中共定义了三个指令:page指令,Include指令,taglib指令. JSP指令的基本语法格式:<%@ 指令 属性名="值" %> 例如: <%@ page contentType="text/html;charset=gb2312"%> 如果一个指令有多个属性,这多个属性可以写在一个指令中

JSP中include指令和include动作的区别

include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改,否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如果只修改了include文件内容,而没有对JSP修改,得到的结构将不会改变,所以直接执行已经存在的字节码文件,而没有重新编译.因此对不经常变化的内容,用include指令是合适的,如果需要的内容是经常变化的,则需要动作元素<jsp:include>.下面将详细区分他们之间的不同 1.include指

JSP内置对象,动作,指令总结

总的来说关于JSP界面有九大内置对象,7大动作,三大指令,现在博主就将这些粘贴出来,此文是很久前整理的学习笔记,如有雷同请谅解! jsp九大内置对象:1>out 向客户端输出数据,字节流.如out.print(" dgaweyr"); 2>request 接收客户端的http请求.String getParameter(String name):得到表单参数名name的值.String[] getParameterValues(String name):(得到String[

include指令和&lt;jsp:include&gt;标准动作

利用JSP的包含机制,可以有效的避免重复,把可重用的部分独立出去,使用include把它们包含到当前文件.JSP有两种包含机制:include指令和<jsp:include>标准动作. 1.include指令 2.<jsp:include>标准动作 3.内部原理 include指令和<jsp:include>标准动作看上去一样,而且通常有相同的效果,但是它们生成的servlet代码并不相同. include指令在转换时发生,它就像把被包含的文件复制到当前文件一样:<

JSP的3个编译指令,7个动作指令

3个编译指令 1.page指令 page指令用户定义JSP页面中的全局属性,它的语法格式如下: <%page {language="java"} {extends="package.class"} {import="{package.class|package.*},..."} {session="true | false"} {buffer="none | 8kb | sizekb"} { fals

JSP中include指令和include动作区别

首先 <%@ include file=" "%>:为指令元素 <jsp:include page=" " flush="true"/>:为 动作元素 先说指令元素: include指令元素读入指定页面的内容.并把这些内容和原来的页面融合到一起. 然后经过两个阶段: 1.将jsp翻译成 servlet  2.servlet 翻译成 .class文件 这样的话,在被引入文件中请不要加入 contentype 的属性 ,因为j