zoukankan      html  css  js  c++  java
  • JSP动作元素

    将 一些常用的JSP动作标记写下来,虽然自己大致都知道如何使用,但对于其中的一些细节可能并非清楚!
    <jsp:param>
    jsp:param操作被用来以“名-值”对的形式为其他标签提供附加信息。写一般与<jsp:forward>,<jsp:include>,<jsp:plug>,一起使用。
    它的使用方式如下:
    <jsp:param name="paramName"  value="paramValue"/>

    <jsp:include>
    该操作允许在请求的时间内在现成的JSP页面里面包含静态或动态的资源。被访问的对象对JSP write对象的访问权,并且它不能设置头或者Cookie.如果页面输出是缓冲的,那么缓冲区的刷新要俦于包含的刷新。因此它在运行效率上比<%@   include  file="include.html"%>要低,但它可以动态增加内容,使用例子如下:

    jsp_include.jsp
    包含静态页面static.html
    包含动态页面two.jsp

    <jsp:forword>
    该操作允许将请求转发到另一个JSP,Servlet或者静态资源文件。一旦遇上此标记即会停止执行当前的JSP,转而执行被转发的资源。
    使用示例如下:
    登录页面login.jsp
    登录验证checklogin.jsp
    登录成功后的页面success.jsp

    <jsp:setProperty>
    此操作与useBean协作,用来设置Bean的简单属性和索引属性。<jsp:setProperty>标签使用Bean的setXXX()方法。利用它设置属性多种方法。
    Bean的自省(introspection)用来发现出现的是哪些属性和它们的名字是什么,这些属性是简单的还是索引的,它们有什么类型等,用以下方法使用setProperty:
    <jsp:setProperty name="beanName" property="*"/>

     <jsp:setProperty name="beanName" property="propertyName" param="parameterName"/>
     或
     <jsp:setProperty name="beanName" property="propertyName"/>
     或
     <jsp:setProperty name="beanName"  property="propertyName" value="propertyValue"/>
    name="beanName"这是个必须属性,其值为Bean的名字,是在这之前用<jsp:useBean>的引入名称。
    在所有使用没有 value属性的方式时要特别注意value的引用属性名一定要与Bean中定义的属性名严格一致!否则可能达不到预期效果!
    另外从客户端传到器上的参数字符串型,这些字符串为了能够在Bean中匹配就需要罪魁成对应的类型。下面列出转换方法:
    boolean      java.lang.Boolean.valueOf(String).booleanValue()
    Boolean      java.lang.Boolean.valueOf(String)
    byte        java.lang.Byte.valueOf(String).byteValue();
    Byte        java.lang.Byte.valueOf(String)
    char        java.lang.Character.valueOf(String).charValue();
    Character     java.lang.Character.valueOf(String)
    double       java.lang.Double.valueOf(String).doubleValue()
    Double      java.lang.Double.valueOf(String)
    int         java.lang.Integer.valueOf(String).intValue()
    Integer      java.lang.Integer.valueOf(String)
    float        java.lang.Float.valueOf(String).floatValue()
    Float       java.lang.Float.valueOf(String)
    long        java.lang.Long.valueOf(String).longValue()
    Long       java.lang.Long.valueOf(String)

    <jsp:getProperty>
    此操作是对<jsp:setProperty>操作的补充,它用来访问一个Bean的属性。它访问的属性值将它转化成一个String,然后发送到输出流中。如果属性是一个对象,将调用toString()方法,它的使用如下:
    <jsp:getProperty name="beanName" property="propertyName">
    它也同样与jsp:useBean一起使用。,同时它也有一些限制,如:不能使用它来检索一个已经被索引了的属性。

    <jsp:useBean>
    此标签用于在JSP页面中创建一个Bean实例,并指定它的名字及作用范围。它保证对象在标签指定的范围内可以使用。
    它的使用例子如下:
    <jsp:useBean id="shopcar" scope="session" class="sessopn.Carts"/>
    <jsp:setProperty name="shopcart" property="*"/>

    <jsp:useBean id="checking" scope="session" class="bank.Checking">
    <jsp:setProperty name="checking" property="balance" value="0.0"/>
    </jsp:useBean>
    scope的取值可以是page/request/session/application 范围依次递增!
    可以分别使用
    //page 中直接使用checking即可!
    request.getAttribute("checking")
    session.getValue("checking")
    application.getAttribute("checking")
    另外除了以上属性useBean还有以下属性
    class="className"
    这是Bean的类路径和类名。这个class不能是抽象的,必须有一个公用的,无参数的构造器。
    BeanName="beanName"  type="typeName"
    使用instantiate方法从一个class中实例化一个Bean,同时还可以指定 Bean的类型
    type="typeName"
    type可以是一个类本身,也可以是一个类的父类,或者是一个类的接口。如果没有使用class和BeanName指定type,Bean将不会被 实例化
    另外不能同时使用 class和BeanName。BeanName的是Bean的名字,它的形式为"a.b.c"。

    下面是一个具体的程序示例:

    用户信息JavaBean TestBean.java
    用户注册界面中的表单register.html
    信息注册代码register.jsp
    <jsp:plugin>
    此操作是用来产生客户端浏览器的特别标签(Object或者embed),可以使用它来插入Applet或者JavaBean。
    一般来说<jsp:plugin>元素指定的对象是Applet还是Bean,同样也会指定class的名字,另外还会指定将从哪里下载这个Java插件。
    <jsp:plugin type=applet  code="efly.testMyApplet.class"  codebase=".">
        
    <jsp:params>
                
    <jsp:param  name="aParameterName"  value="aParameterNameValue"/>
        
    </jsp:params>
        
    <jsp:fallback>
                
    <p>Unable  to  load  applet.</p>
        
    </jsp:fallback>
    </jsp:plugin>

    解释:
    1:type="bean/applet"
    2:code="classFileName"  插件执行JAVA类文件的名称。在名称中必须加上扩展名,且此文件必须放在用 codebase属性的目录下。
    3:codebase="classFileDirectoryName"这包含插件将运行的JAVA类的目录或指向这个目录的路径。默认为JSP文件的当前路径。
    4:name="instanceName" 这是Bean或Applet的实例的名称。使得被同一个JSP文件调用的Bean或Applet之间的通讯成为可能。
    5:archive="URIToArchive,……"这是以逗号分隔的路径名列表,是那些用于codebase指定的目录下的类装载器预装载的存档文件所在的路径名。
    6:align="botton/top/middle/left/right"图形,对象,Applet的排列方式。
    7:height="displayPixels"  width="displayPixels"  显示的高宽
    8:hspace="leftRightPixels"  vspace="topBottomPixels"  左右  上下留下空间大小
    9:jreversion="JREVersionNumber | 1.1" 这是Applet或Bean运行时所需的JRE版本
    10:nspluginurl="URLToPlugin" 这是Netscape Navigator用户能够使用的JRE下载地址
    11:iepluginurl="URLToPlugin" 这是Internet Explorer用户能够使用的JRE下载地址
    12:<jsp:params>表示需要向Applet或Bean传送的参数或值
    13:<jsp:fallback>回滚,下载失败则显示里面的内容,此标记只能在<jsp:plugin>内部使用

    下面做一个具体的例子来结束这篇笔记!

    Applet小程序
    调用页面


     

  • 相关阅读:
    Java 几个权限关键字
    Java变量的定义
    Hibernate反射DAO模式
    BroadcastReceiver与Notification的综合应用自定义Action的调用方式
    SEO优化技术之关键字
    中软国际助力四所高校建设国家级大学生校外实践教育基地
    讲师团队的培养
    IT与学习
    程序员,你的粮草何在?
    如何更好的学好Linux操作系统
  • 原文地址:https://www.cnblogs.com/eflylab/p/621241.html
Copyright © 2011-2022 走看看