jsp生命週期以及基本用法

<%@ page language="java" contentType="text/html;charset=utf-8"
   pageEncoding="utf-8"
   %>

<!-- 一個JSP頁面相當於是一個Java的工作類 -->
<!-- JSP中&lt;%!和 %!的區別在於
  &lt;%!中可以定義方法、靜態方法和靜態屬性以及
  屬性等,但是&lt;%中不可以,而且%中的out指的
  並不是System.out而是PrintWriter寫到頁面的out
  實例對象-->
<html>
  <head>
    <title>JSP 實例的生命週期</title>
  </head>
  <body>
    <!--初始化測試變量,和類裏面的域聲明操作相同-->
    <!--注意這裏使用&lt;%! -->
    <%!
    private int initVar=0;
    private int serviceVar=0;
    private int destoryVar=0;
    %>
    
    <%!
    int instanceVar=0;
    %>


    <!--_jspInit()初始化,對應servlet類中的_jspInit()-->
    <!注意這裏使用&lt;%!-->
    <%!
    public void jspInit(){
      initVar++;
      System.out.println("jspInit(): JSP被初始化:"+initVar+"次");
    }
    %>

    <%!
    public String getName(){
      return "davidsu33";
    }
    %>
    
    <!注意這裏使用&lt;%!-->
    <!--對應servlet類中的_jspDestory()-->
    <%!
    public void jspDestory(){
      destoryVar++;
      System.out.println("jspDestory(): JSP被銷燬:"+destoryVar+"次");
      }
     %>
     
     <!--對應servlet類中的_jspService()-->
     <%
     //在_jspService中可以直接用out.println,但是在
     //_jspInit和_jspDestory中不行,爲啥?
     serviceVar++;
     instanceVar++;
     //這裏的out並不是System.out而是PrintWriter的一個實例對象
     //如果寫成System.out.println則是將數據輸出到了控制檯
     out.println("_jspService():JSP共響應了"+serviceVar+"次請求");
     out.println("<br/>");
     out.println("JSP的作者是:" + getName());
     String c1 = "初始化次數:" + initVar;
     String c2 = "響應客戶請求次數:"+serviceVar;
     String c3 = "銷燬次數:"+destoryVar;
     String c4 = "InstanceVar:"+instanceVar;
     %>

     <h1>菜鳥教程 JSP實例測試</h1>
     <!--要注意的是&lt;%=中間不能有空格 -->
     <p><%=c1 %></p>
     <p><%=c2 %></p>
     <p><%= c3 %></p>
     <p><%= c4 %></p>
  </body>
</html>




      

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章