jsp指令和学习笔记集锦

Jsp包含三个编译指令和七个动作指令。
三个编译指令为:page、include、taglib。

七个动作指令为:jsp:forward、jsp:param、jsp:include、jsp:plugin、jsp:useBean、jsp:setProperty、jsp:getProperty。

一、编译指令

1、 page指令

a. 通常位于jsp页面的顶端,同一个页面可以有多个page指令。语法格式如下:

〈% @page

[language="Java"]

[extends="package.class"]

[import= "package. class I package. *},…"]

[session="true I false"]

[buffer="none I 8kb I size kb" 1

[autoFlush="true I false"]

[isThreadSafe="true I false"]

[info="text"]

[errorPage="relativeURL"]

[contentType="mimeType[ ;charset=characterSet]" I"text/html;charset= "808859-1"]

[isErrorPage=" true I false"]

%〉

1)language属性,一般情况就是java,代表jsp页面使用的脚本语言。

2)Extends属性,确定 JSP 程序编译时所产生的 Java 类,需要继承的父类,或者需要实现的接口的全限定类名。

1.import属性,用来导入包,下面几个包是默认自动导入的,不需要显式导入。默认导入的包有:

java.lang.*

javax.servlet.*

javax.servlet.jsp.*

javax.servlet.http.*

2.Session属性,设定这个 JSP 页面是否需要 HTIP session 。

3.buffer属性,指定输出缓冲区的大小。输出缓冲区的 JSP 内部对象: out 用于缓存 JSP页面对客户浏览器的输出,默认值为 8kb,可以设置为 none ,也可以设置为其他值,单位为kb

4.autoFlush属性,当输出缓冲区即将溢出时,是否需要强制输出缓冲区的内容。设置为true 时为正常输出;如果设置为 false ,会在 buffer 溢出时产生一个异常。

5.Info属性,设置该 JSP 程序的信息,也可以看做其说明,可以通过 Servlet. getServletInfo()方法获取该值。如果在 JSP 页面中,可直接调用 getServletInfoO方法获取该值,因为 JSP 页面的实质就是 Servlet 。

errorPage属性,指定错误处理页面。如果本程序产生了异常或者错误,而该 JSP 页面没有对应的处理代码,则会自动调用该指令所指定的 JSP 页面。使用 JSP 页面时,可以不处理异常,即使是 checked 异常。(重定向到对应的错误处理页面,但是URL还是原来的URl,并不发生变化)如果这个页面不存在这个属性,那么一旦代码出现问题,就会在开发环境和IE浏览器上提示错误。可见这条属性控制异常处理的效果在表现形式上要好的多。

6.IsErrorPage属性,设置本 JSP 页面是否为错误处理程序。如果该页面本身己是错误处理页面,则无须使用 errorPage 属性。

7.ContentType属性,用于设定生成网页的文件格式和编码方式,即 MIME 类型和页面字符集类型,默认的 MIME 类型是 text/html; 默认的字符集为 ISO-8859-1 。

2、 include指令

使用 include 指令,可以将一个外部文件嵌入到当前 JSP 文件中,同时解析这个页面中的 JSP 语句(如果有的话)。这是个静态的 include 语旬,不会检查所包含 JSP 页面的变化。

include 既可以包含静态的文本,也可以包含动态的 JSP 页面。静态的编译指令include ,是将被包含的页面加入进来,生成一个完整的页面。

include 编译指令的语法:

〈% @include file="relativeURLSpec" %〉

如果被嵌入的文件经常需要改变,建议使用<jsp:include>操作指令,因为它是动态的 include 语句。

包含include指令的jsp页面在部署后,经过访问编译生成java文件,在tomcat的 work\Catalina\localhost\project\org\apache\jsp目录下会生成对应的java文件,这些文件与jsp的名字相同,他包含了编译后的代码,甚至include包含的另外一个jsp的代码也被相应的加入了进来。

二、 动作指令

1、 forward指令:forward 指令用于将页面响应控制转发给另外的页面。既可以转发给静态的 HTML页面,也可以转发到动态的 JSP 页面,或者转发到容器中的 Servlet。

JSP 的 forward 指令的格式如下:

对于 JSP 1. 0 ,使用如下语法:

<jsp:forward page=”{relativeURL |<%=expression%>}” />

可使用如下语法:

<jsp:forward page=”{relativeURL |<%=expression%>}”>

{<jsp:param…/>}

</jsp:forward>

第二种语法用于在转发时增加额外的请求参数。增加的请求参数的值可以通过HttpServletRequest 类的 getParameter方法获取。

2、 include指令,它是一个动态的指令,可以用于导入某个页面。它的导入会每次检查被导入页面的改变。下面是include指令的使用格式:

<jsp:include page=”{relativeURL |<%=expression%>}” flush=”true” />

或者:

<jsp:include page=”{relativeURL |<%=expression%>}” flush=”true”>

<jsp:param name=”paramName” value=”paramValue”/>

</jsp:include>

flush 属性用于指定输出缓存是否转移到被导入文件中。如果指定为剧。则包含在被导入文件中;如果指定为false,则包含在原文件中。对于JSP 1.1以下的旧版本,只能设置为false。

<include>和<jsp:include>分别为静态导入和动态导入。他们的的区别:静态导入是将被导入页面的代码完全插入,两个页面生成一个整体的 Servlet; 而动态导入则在 Servlet 中使用动态导入,从而将页面引入。

3、 useBean、setProperty和getProperty指令

这三个指令都是与JavaBean相关的指令,其中useBean用于在jsp页面初始化一个java实例,setProperty用于修改JavaBean实例的属性,getProperty用于获取JavaBean实例的属性。

useBean的语法格式:

<jsp:useBean id=”” class=”” scope=”page | request |session | application” >

Id是JavaBean的实例名,class属性确定JavaBean的实现类。Scope属性确定生存范围【页面、请求、会话、应用】

setProperty的语法格式:

<jsp:setProperty name=”” property=”” value=”” />

Name属性确定需要设定

4、 plugin指令

plugin 指令主要用于下载服务器端的 JavaBean 或 Applet 到客户端执行。由于程序在客户端执行,因此客户端必须安装虚拟机。

plugin 的语法格式如下:

<jsp:plugin type=”bean | applet"

code="classFileName"

codebase="classFileDiretoryName"

[name=" instanceName"]

[archive="URLtoArchive"]

[align= "bottom I top I middle I left I right"]

[heigh="displayPixels"]

[width="displayPixels"]

[hspace="leftRightPixels"]

[vspace="topBottomPiexels"]

[jreversion=JREVersionNumber|1.2"]

[nspluginurl="URLToPlugin"]

[iepluginurl="URLToPlugin"]>

[<jsp:parames>

[jsp:param name="parameterName" value="parameterValue" />]

</jsp:params>]

[<jsp:fallback>text message for user that can no see the plugin

</jsp:fallback> ]

</jsp:plugin>

这些属性的说明如下:

Type: 指定被执行的java程序的类型,是一个bean还是一个applet

Code: 指定被执行的文件名,该属性值必须以“.class”扩展名结尾

Codebase: 指定被执行的文件目录。

Name: 给该程序起一个名字用来标识该程序。

Archive: 指向一些要预先载入的将要使用到的类的路径。

Hspace,Vspace: 显示左右上下的留白。

jreversion: 能正确运行改程序必须的JRE版本。

Nsplugin,ieplugin: Netscape Navigator, Internet Exploer 下载运行所需JRE 的地址。

<jsp:fallback>指令:当不能正确显示该applet时,代替显示的提示信息。

5、 param指令

param指令用于设置参数值,这个指令本身不能单独使用,因为单独使用没有意义。它可以和以下几个指令合起来使用

jsp:include

jsp:forward

jsp:plugin

-----------------------------------------------------------------------------------------------------------

时间原因暂时总结到这里,下次继续,如有错误欢迎提出!

时间: 2024-10-28 21:18:33

jsp指令和学习笔记集锦的相关文章

JSP/Servlet Web 学习笔记 DayTwo

JSP指令 a)page指令 定义JSP文件中的全局属性.一个JSP页面可以包含多个page指令.除了Import以外,其他page指令定义的属性/值只能出现一次. 其详细语法为: <%page [language="java"] [extends="package.class"] [import="{package.class|package.*},……"] [session="true|false"] [buffer

jsp 基本语法学习笔记

jsp主要包含一下内容: 指令:指令提供该页面的全局信息,例如,重要的状态,错误处理,是否是session的一部分等. 声明:页面范围的变量和方法的声明. 脚本:嵌入页面内java代码. 表达式:把表达式变成string型以便包含在内容的输出中. jsp中的替换:可用&apos;表示双引号,可用&quto;来表示单引号. jsp的注释: <%-- 这是一个JSP的注释--%> <% /*这是一个JSP的注释*/%> <% /**这是一个JSP的注释*/%>

JSP/Servlet Web 学习笔记 DayThree

JSP内置对象 使用JSP语法可以存取这些内置对象来执行JSP网页的Servlet环境相互作用.内置对象其实是由特定的Java类所产生的.每一种内置对象都映射到一个特定的Java类或者端口,在服务器运行时根据情况自动生成. 下表列出了所有的JSP内置对象: 对象名 描述 作用域  分类 appliction 显示相应网页是有应用程序的对象 整个应用程序执行期间 作用域通信对象:检索JSP页面的Servlet相关信息 session 保存个人信息的个人所有对象 会话期间 pageContext 提

JSP/Servlet Web 学习笔记 DayFour

Servlet概述 Servelt是使用Java Servlet应用程序接口及相关类和方法的Java程序. Servlet是用Java编写的Server端程序,它与协议和平台无关.Servlet运行于Java服务器中. Java Servlet API 定义了Servlet和服务器之间的标准接口,这使得Servlet具有跨服务器平台的特性. 通常,Servlet采用一种无状态的“请求-响应”模型来访问.它能处理客户端传来的Http请求,从中提取参数,处理业务逻辑,最终返回数据或输出HTML.它还

JSP/Servlet Web 学习笔记 DayFour —— 实现一个简单的JSP/Servlet交互

小实例说明: a)实现一个由JSP负责前台显示,Servlet负责后台处理的交互小实例 b)JSP页面由表单获取一个开始数字,一个结束数字,交给Servlet打印响应的乘法表. 未解决的问题: a)跳转貌似不能识别目录中的HTML文件,所以我把源码复制到JSP中,结果能找到. b)Servlet获取到JSP传过来的数据后,如果想在JSP页面out.print相关的JS代码貌似不能实现 目前的效果是:在当前的Servlet页面弹出了JS alert()弹窗 再重定向回之前的JSP页面. 源码: <

JSP/Servlet Web 学习笔记 DayThree —— 实现一个登陆小界面

项目说明 利用JSP.HTML.JS实现了一个简易的登陆系统.根据前两天的所学,实现了如下功能: a)用户名.密码验证(不基于数据库,只做一个简单的表单数据获取并验证) b)页面访问次数统计 c)验证用户名.密码为空的提醒弹窗 d)一个简易的根据输入错误次数来实现的防恶意登陆的小弹窗 相关知识点: a)主要利用form的POST方法传递数据,在此之外再基本利用<jsp:param>标签配合<jsp:forward>传递其他的相关数据. b)此外JavaScript可以完美嵌套于JS

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

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

JSP学习笔记(一):JSP语法和指令

一.语法 1.脚本程序的语法格式: 脚本程序可以包含任意量的Java语句.变量.方法或表达式,只要它们在脚本语言中是有效的. <% 代码片段 %> 2.中文编码问题 如果我们要在页面正常显示中文,我们需要在 JSP 文件头部添加以下代码: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!D

学习笔记(四)jsp指令及中文乱码

1. JSP 指令: JSP指令(directive)是为JSP引擎而设计的, 它们并不直接产生任何可见输出, 而只是告诉引擎如何处理JSP页面中的其余部分. 2. 在目前的JSP 2.0中,定义了page.include 和 taglib这三种指令 3. page 指令: 1). page指令用于定义JSP页面的各种属性, 无论page指令出现在JSP页面中的什么地方, 它作用的都是整个JSP页面, 为了保持程序的可读性和遵循良好的编程习惯, page指令最好是放在整个JSP页面的起始位置.