zoukankan      html  css  js  c++  java
  • JSP指令与动作

    一、指令

    JSP指令用来设置整个JSP页面的相关属性,如网页的编码方式和脚本语言等。

    1、page指令:通常位于JSP页面的顶端,同一页面可以有多个page指令

    page指令语法:<%@ page 属性1="属性值1"属性2="属性值2"属性n="属性值n"%>

    <%@ page 属性1="属性值1"属性2="属性值2"属性n="属性值n"%>
    page指令常用属性表
    属性 描述 默认值
    language 指定JSP页面使用的脚本语言 java
    import 指定脚本语言中使用到的类文件 null
    contentType 指定JSP页面采用的编码方式以及文件类型 text/html,ISO-8859-1
    buffer 指定out对象使用缓冲区的大小  
    extends 指定servlet继承自哪个类  
    isELIgnored 指定是否执行EL表达式  
    errorPage 指定当前页面发生异常时需要转向的错误处理页面  
    isErrorPage 指定当前页面是否可以作为错误处理页面  

    【注】pageEncoding是JSP页面本身的编码,contentType的charset属性是指服务器发给客户端时的内容编码

    2、include指令:将一个外部文件嵌入到当前JSP页面中,同时解析这个页面

    <%@ include file="URL"%>

     include指令中的文件名是一个相对的URL,JSP编译器默认在当前路径下寻找。

    3、taglib指令:使用标签库定义新的自定义标签,在JSP页面启用定制行为

    <%@ taglib uri="uri" prefix="前缀"%>

    uri属性确定标签库的位置,prefix属性指定标签库的前缀。

    二、动作

    JSP动作元素(action elements),动作元素为请求处理阶段提供信息。动作元素遵循XML元素的语法,有一个包含元素名的开始标签,可以有属性、可选的内容、与开始标签匹配的结束标签。

    JSP动作的分类:

    ①与存取JavaBean有关的动作

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

    ②JSP1.2开始有的基本元素,包括6个动作元素

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

    ③JSP2.0新增加的元素,主要与JSP Document有关,包括6个元素

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

    ④JSP2.0新增加的元素,主要是用来动态生成XML元素标签的值,包括3个动作

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

    ⑤JSP2.0新增加的元素,主要用在Tag File中,有2个元素

    <jsp:invoke><jsp:dobody>

    1、include动作

    <jsp:include page="URL" flush="true/false"/>

    page属性表示要包含的页面,flush属性表示被包含的页面是否要从缓冲区读取

    【注】include指令和include动作的区别,简单说来,include指令包含的是代码,include动作包含的是结果

    include指令与include动作的比较表
      include指令 include动作
    语法格式 <%@ include file="url" %> <jsp:include page="url">
    发生作用的时间 页面转换期间 请求期间
    包含的内容 文件的实际内容 页面的输出
    转换成的Servlet 主页面与包含页面转换为一个Servlet 主页面和包含页面分别转换为独立的Servlet
    编译时间 较慢,资源必须被解析 较快
    执行时间 稍快 较慢,每次资源必须被解析

    2、forward动作

    <jsp:forward page="URL"/>

    等同于request.getRequestDispatcher(url).forward(request,response);

    3、param动作

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

    常常与<jsp:forward>标签一起使用,作为其子标签,可以添加新的参数也可以修改原有参数

    <jsp:forward page="login.jsp">
        <jsp:param name="name" value="admin"/>
    </jsp:forward>

    4、useBean动作

    <jsp:useBean id="标示符" class="类名" scope="作用范围">

    5、setProperty动作

    <!-- 全部属性与表单关联 -->
    <jsp:setProperty name="JavaBean实例名" property="*"/>
    <!-- 部分属性与表单关联-->
    <jsp:setProperty name="JavaBean实例名" property="指定属性名"/>
    <!-- 手工设置属性-->
    <jsp:setProperty name="JavaBean实例名" property="指定属性名" value="指定属性值"/>
    <!-- 与request参数关联-->
    <jsp:setProperty name="JavaBean实例名" property="指定属性名" value="指定属性值" param="request对象中的参数名"/>

    6、getProperty动作

    <jsp:getProperty name="JavaBean实例名" property="属性名"/>

    7、plugin动作

    <jsp:plugin>标签用来根据浏览器类型,通过插入Java插件运行Java Applet所必需的OBJECT活EMBED元素

    <jsp:plugin 
    type="bean | applet" 
    code="classFileName" 
    codebase="classFileDirectoryName" 
    [ name="instanceName" ] 
    [ archive="URIToArchive, ..." ] 
    [ align="bottom | top | middle | left | right" ] 
    [ height="displayPixels" ] 
    [ width="displayPixels" ] 
    [ hspace="leftRightPixels" ] 
    [ vspace="topBottomPixels" ] 
    [ jreversion="JREVersionNumber | 1.1" ] 
    [ nspluginurl="URLToPlugin" ] 
    [ iepluginurl="URLToPlugin" ] ></jsp:plugin>

    8、<jsp:element>、<jsp:attribute>、<jsp:body>动作

    这三个动作元素动态定义了XML元素

    <jsp:element name="xmlElement">
        <jsp:attribute name="xmlElementAttr">
           Value for the attribute
        </jsp:attribute>
        <jsp:body>
           Body for XML element
        </jsp:body>
    </jsp:element>

    参考资料:慕课网【JAVA遇见HTML——JSP篇】http://www.imooc.com/learn/166

         w3cschool的JSP教程 http://www.w3cschool.cc/jsp/jsp-tutorial.html

  • 相关阅读:
    【Gamma】 Phylab 展示博客
    【技术博客】Postman接口测试教程
    【技术博客】利用Python将markdown文档转为html文档
    【技术博客】使用PhpStorm和Xdebug实现Laravel工程的远程开发及调试
    【技术博客】Laravel5.1文件上传单元测试
    【技术博客】移动端的点击事件与Sticky Hover问题
    【技术博客】 Laravel 5.1单元测试(PHPUnit)入门
    Scrum Meeting博客目录
    团队事后分析
    Gamma阶段测试报告
  • 原文地址:https://www.cnblogs.com/sherryueda/p/4270600.html
Copyright © 2011-2022 走看看