学通JAVAWEB——JSP开发(二、JSP动作元素)

1 JSP动作元素分类

JSP动作元素可以用来动态地包含文件、网页跳转及使用JavaBean组件等。

        <jsp:XXX />
        <jsp:XXX > </jsp:XXX>

JSP动作元素分为如下5类。

第一类是与存取JavaBean有关的,包括如下3个动作元素。

<jsp:useBean>、<jsp:setProperty>、<jsp:getProperty>

第二类是JSP 1.2就开始有的基本动作元素,包括如下6个动作元素。

<jsp:include> 、 <jsp:forward> 、 <jsp:param> 、 <jsp:plugin> 、 <jsp:params> 、 <jsp:fallback>

第三类是JSP 2.0新增的动作元素,主要与JSP document有关,包括如下6个动作元素。

<jsp:root>、<jsp:declaration>、<jsp:scriptlet>、<jsp:expression>、<jsp:text>、 <jsp:output>

第四类也是JSP 2.0新增的动作元素,主要用来动态地生成XML元素标签的值,包括如下3个动作元素。

<jsp:attribute>、<jsp:body>、<jsp:element>

第五类也是JSP 2.0新增的动作元素,主要用在Tag File中,包括如下2个动作元素。

<jsp:invoke>、<jsp:doBody>

2 <jsp:include>动作元素

<jsp:include>动作元素用来包含静态和动态的文件。如果被包含的文件为静态的文件,那么只是单纯地加到JSP页面中,不会进行任何处理;如果被包含的文件为动态的文件,那么会先进行处理,然后将处理的结果加到JSP页面中。

        <jsp:include page="包含文件URL地址"  flush="true | false">

<jsp:include>动作元素包含两个属性:page和flush。

其中page属性用来指定被包含文件的URL地址。flush属性用来指定缓冲区满时,是否进行清空。如果设置为true,那么缓冲区满时将进行清空;如果设置为false,那么缓冲区满时不会进行清空。flush属性的默认值为false。

2.1 使用<jsp:include>动作元素包含静态的文件

<jsp:include>动作元素用来包含静态的文件时,只是单纯地加到JSP页面中,不会进行任何处理。

        01  <%@ page language="java" contentType="text/html;charset=gb2312"%>
        02  <html>
        03  <head>
        04       <title>包含静态文件</title>
        05  </head>
        06  <body>
        07       使用jsp:include动态元素包含静态文件<br>
        08       <jsp:include page="content.txt"></jsp:include>
        09  </body>
        10  </html>

2.2 使用<jsp:include>动作元素包含动态的文件

<jsp:include>动作元素包含的文件为动态的文件时,会先进行处理,然后将处理的结果加到JSP页面中。

 2.3 <jsp:include>和<%@ include%>的区别

使用<%@ include%>指令元素只是将页面的内容静态地包含进来,如果被包含的文件中有JSP代码,则会执行该代码,而不管该文件是否为动态文件。

3 <jsp:forward>动作元素

<jsp:forward>动作元素用来转移用户的请求,使得用户请求的页面从一个页面跳转到另一个页面。这种跳转为服务器端跳转,所以用户的地址栏不会发生任何变化。

        <jsp: forward page="跳转文件URL地址" >

<jsp:include>动作元素只包含一个属性即page,page属性用来指定跳转文件的URL地址。

3.1 使用<jsp: forward >动作元素实现页面跳转

使用<jsp: forward >动作元素实现页面跳转非常简单,只需要设置其page属性为跳转到文件的URL地址即可。

3.2 跳转执行流程

如果JSP文件包含<jsp: forward >动作元素,那么JSP会首先执行<jsp: forward >动作元素之前的代码。只有执行到<jsp: forward >动作元素时才会进行跳转,跳转完成后将执行被跳转的JSP文件,<jsp:forward >动作元素之后的代码将不会被执行。

4 <jsp:param>动作元素

<jsp:param>动作元素用来传递参数,一般与<jsp:include>、<jsp:forward>联合使用。其语法格式如下。

        <jsp:param name="参数名" value="参数值"/>

<jsp:param>动作元素包含两个属性,一个是name,用来设定传递参数的名称;一个是value,用来设定传递参数的值。

4.1 <jsp:include>动作元素搭配<jsp:param>动作元素

通过<jsp:include>动作元素搭配<jsp:param>动作元素,可以实现在包含文件的同时向被包含文件传递参数。

4.2 <jsp:forward>动作元素搭配<jsp:param>动作元素

通过<jsp:forward>动作元素搭配<jsp:param>动作元素,可以实现在跳转页面的同时向跳转到页面传递参数。

5 .<jsp:plugin>、<jsp:params>和<jsp:fallback>

<jsp:plugin>、<jsp:params>和<jsp:fallback>三个动作元素,一般都是搭配起来使用的。其中<jsp:plugin>动作元素用来在JSP中嵌入Java插件;<jsp:params>动作元素用来给Bean或Applet传递参数;<jsp:fallback>动作元素用来指定当浏览器不支持或无法启动 Bean或Applet时,在页面上打印输出错误提示信息。

5.1 <jsp:plugin>动作元素

<jsp:plugin>动作元素用来在JSP中嵌入Java插件,比如Applet。<jsp:plugin>动作元素会自动根据浏览器版本替换成<object>标签或<embed>标签。其中<object>用于HTML 4.0版本,而<embed>标签用于HTML 3.2版本。

        <jsp:plugin
            type="bean | applet"
            name="Applet名称"
            code="Java类名"
            codebase="Java类所在目录"
            align="对齐方式"
            height="高度"
            width="宽度">
            hspace="水平间距"
            vspace="垂直间距"
            archive="预先加载的类列表"
            jreversion="JRE版本"
            iepluginurl="URL"
            nspluginurl="URL"
        </jsp:plugin>

 

        01  <%@ page language="java" contentType="text/html;charset=gb2312"%>
        02  <html>
        03  <head>
        04       <title>执行Applet</title>
        05  </head>
        06  <body>
        07       <%-- 指定其Java类为Clock.class,所在目录为Applet,类型为applet --%>
        08       <jsp:plugin   code="Clock.class"   codebase="Applet"   type="applet">
    </jsp:plugin>
        09  </body>
        10  </html>

 5.2 <jsp:params>动作元素

<jsp:params>动作元素用来给Bean或Applet传递参数,一般搭配<jsp:param>使用。

        <jsp:plugin>
            <jsp:params>
                <jsp:param name="参数名" value="参数值"/>
            </jsp:params>
        </jsp:plugin>

5.3 <jsp:fallback>动作元素

<jsp:fallback>动作元素用来指定当浏览器不支持或无法启动Bean或Applet时,在页面上打印输出错误提示信息。

        <jsp: fallback >
            <jsp:fallback>错误信息</jsp:fallback>
        </jsp: fallback >
        01  <%@ page language="java" contentType="text/html;charset=gb2312"%>
        02  <html>
        03  <head>
        04       <title>执行Applet</title>
        05  </head>
        06  <body>
        07       <%-- 指定其Java类为Clock.class,所在目录为Applet,类型为applet --%>
        08       <jsp:plugin code="Clock.class" codebase="Applet" type="applet">
        09           <%-- 传递三个参数--%>
        10           <jsp:params>
        11               <jsp:param name="bgcolor" value="000000"/>
        12               <jsp:param name="fgcolor1" value="ff0000"/>
        13               <jsp:param name="fgcolor2" value="00ff00"/>
        14               </jsp:params>
        15           <%-- 无法加载时输出错误信息--%>
        16           <jsp:fallback>
        17               不能加载该Applet
        18           </jsp:fallback>
        19       </jsp:plugin>
        20  </body>
        21  </html>

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: JSPJava Server Pages)和 HTML(Hypertext Markup Language)都是用于创建 Web 应用程序的技术,它们之间有一些区别。 HTML 是一种标记语言,用于创建 Web 页面和 Web 应用程序的静态内容。 HTML 页面是由标签、属性和文本组成的,这些标签和属性描述了 Web 页面中显示的内容和布局。 HTML 页面的内容是在 Web 服务器上静态生成的,因此当用户请求访问一个 HTML 页面时,服务器只是简单地将该页面发送给客户端浏览器。 JSP 是一种服务器端的 Java 技术,允许在 HTML 页面中嵌入 Java 代码。使用 JSP,可以创建动态的 Web 页面,这些页面可以根据用户的请求生成不同的内容。在 JSP 中,可以使用 Java 代码、标签和表达式来生成动态内容,这些内容可以与静态的 HTML 页面组合在一起。 总的来说,HTML 用于创建静态内容的 Web 页面,而 JSP 用于创建动态内容的 Web 页面。因此,如果您需要在 Web 页面中嵌入动态内容,可以使用 JSP,而如果您只需要展示静态内容,那么使用 HTML 就可以了。 ### 回答2: JSPJavaServer Pages)和HTML(Hypertext Markup Language)是用于开发Web应用程序的两种不同技术。 首先,HTML是一种标记语言,用于创建网页的结构和内容。它使用预定义的标签和属性来定义文本、图像、链接等元素。HTML是静态的,意味着它在服务器上被解析并发送给客户端后不会再改变。 JSP是一种动态网页开发技术,它允许在HTML中嵌入Java代码。这意味着可以在页面上执行动态的操作和生成动态内容。JSP使用JSP标签和基于Java的标记来实现动态功能。它允许开发人员将Java代码直接嵌入到HTML页面中,从而可以方便地处理表单提交、数据库操作等。 其次,HTML不支持服务器端的业务逻辑。它主要用于展示信息和定义网页的外观和布局。而JSP允许开发人员在网页中执行服务器端的逻辑操作,比如处理表单数据、查询数据库等。JSP允许将Java代码嵌入到网页中,以实现更复杂的逻辑。 此外,由于JSP允许在HTML中嵌入Java代码,所以可以重用已有的Java类和方法。这使得开发更加高效,因为可以避免重复编写相同的代码。 综上所述,JSP和HTML在功能上有明显的区别。HTML用于创建静态的网页结构和内容,而JSP允许在网页中嵌入Java代码,实现动态的服务器端逻辑。 ### 回答3: JSPJava Server Pages)和HTML(HyperText Markup Language)都是用于构建Web页面的技术,它们之间有以下几个主要区别: 1. 功能:HTML是一种标记语言,用于描述和呈现Web页面的结构和内容。它主要用于显示静态的网页信息。而JSP是一种基于Java的服务器端脚本语言,可以在HTML页面中嵌入Java代码,动态生成网页内容。它具有更强大的功能和灵活性,可实现动态数据的处理和展示。 2. 执行过程:HTML页面是由浏览器直接解析和执行的,它的内容固定,不会随着用户的操作而变化。而JSP页面是在服务器端执行的,它首先被编译为servlet,然后由服务器执行和返回客户端。因此,JSP页面可以根据不同的用户请求和数据变化来动态生成不同的网页内容。 3. 代码复杂度:HTML的语法相对简单,易于学习和编写。而JSP需要掌握更多的Java编程知识和技巧,编写复杂的逻辑和算法。因此,相对于HTML,JSP的代码更加复杂,需要更多的编程技能。 4. 可维护性:由于HTML页面只包含静态的内容,所以其维护相对简单。但在JSP中,由于可能包含大量的Java代码,项目的维护可能会更加复杂,需要更多的工作和注意。 总之,HTML用于静态的页面展示,而JSP用于动态的网页内容生成。在功能、执行过程、代码复杂度和可维护性等方面,JSP具有更多的优势和灵活性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值