JSP基础

作者: alonwang | 来源:发表于2017-04-17 21:58 被阅读16次

    指令标示

    指令标示在服务器解释并执行,在客户端不可见。使用指令标示可以按照指令的设置执行动作和设置整个JSP页面范围内有效的属性

    <%@ 指令名称 属性1="属性值" 属性2="属性值" ... %>

    指令名称有

    1. page
      page指令除了import属性,其他只能在指令中出现一次。
    • language="java"
    • contentType="mimeType;charset=CHARSET"
    • import="java.util.Date,java.util.*" 多个包使用 , 隔开
      ......
    1. include
      在使用指令的位置嵌入其他文件(比如另一个jsp文件)
    • file="文件绝对路径或相对路径"
      文件的路径不支持任何表达式,只能使用确定的路径。如果以 /
      开头说明是绝对路径,否则是相对路径
    1. taglib
      使用基本标识或自定义标识完成特殊功能

        <%@ taglib uri="tagURI" prefix="tagPrefix" %>
      
    • uri属性描述了标签描述符,它是对标签描述文件(*.tld)的映射.
    • prefix属性指定了一个在页面中使用有uri属性指定的标签库的前缀,不能为jsp、jspx...

    脚本标识

    包括声明标识、JSP表达式和脚本程序

    1. JSP表达式

    <%=变量或有返回值的方法或Java表达式>

        下面这个例子输出name的值
        <%String name="dad"; %>
        <%=name%>
        
    在转换为servlet过程中会转换为out.print(),值得注意的是表达式中不能有分号
    
    1. 声明标识
      在JSP页面中声明变量或方法,类似与在类中定义变量和方法

    <%! 变量声明或方法的代码 %>

    1. 脚本程序
      在脚本程序中可以定义变量、调用方法和进行各种表达式运算,这里定义的变量是局部变量每行语句后都要有分号

    注释

    HTML注释中仍然可以插入JSP表达式、声明标识、脚本程序。在HTML源代码可见

    • 隐藏注释
      <%--注释内容--%>
      只在服务器端可见,其内部不能插入表达式等
    • 脚本程序中的注释
      和Java中的注释相同

    动作标识

    <动作标识名称 属性1="值1" 属性2="值2" />

    <动作标识名称 属性1="值1" 属性2="值2" >
    <子动作 属性1="值1" 属性2="值2" />
    </动作标识名称>
    

    用来实现特殊功能,如请求转发,在当前页面包含其他文件,在页面中创建一个JavaBean实例等。
    常见表示动作有

    • <jsp:include>
    • <jsp:forward>
    • <jsp:param>
    • <jsp:useBean>
    • <jsp:setProperty>
    • <jsp:getProperty>
    • <jsp:fallback>
    • <jsp:plugin>
    1. <jsp:include>
      对应于当前的页面包含其他的文件
      <jsp:include page="被包含文件的路径" flush="true|false" />
      还可以向被包含的动态页面传递参数

       <jsp:include page="被包含文件的路径" flush="true|false">
               <jsp:param name="参数名称",value="参数值" />
       </jsp:include>
      
      • page指出被包含页面的路径,可以使用表达式
      • flush表示缓冲区满时是否刷新缓冲区
        <jsp:include>和includez的指令的区别:
    2. 使用include,被包含文件被原封不动的插入。JSP再进行翻译,只生成一个文件。使用<jsp:forward>,程序将请求转发到被包含的页面,并将执行结果输出到浏览器,会生成两个文件。

    3. include若改变了被包含文件就要被重新编译,而<jsp:forward>本来就是两个文件。

    相关文章

      网友评论

          本文标题:JSP基础

          本文链接:https://www.haomeiwen.com/subject/gecxzttx.html