<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      java–JSP

      JSP看起來像HTML,其中HTML代碼叫做模板數據,java Scriptlet代碼叫做JSP元素

       

      JSP是一種Servlet,但與HttpServlet的工作方式又不太一樣。第一次訪問JSP時,tomcat會先將jsp轉為標準的java代碼,然后將java代碼編譯為class文件,最后運行class,以后訪問時,jsp不該動的情況下,會一直調用這個class。

       

      看看轉化過的jsp java類文件源碼,可以發現,jsp和servlet基本沒啥區別。

       

       

      JSP標簽

      JSP腳本必須使用 <% %>括起來,語句必須遵循java語法。

      <html>
      <body>
      
      <%
      	System.out.println("aa");
      %>	
      	
      </body>
      </html>

       

      JSP輸出

      在servlet中,輸出語句是 out.println(),這里jsp中的等效語法是 <%= %>

      <html>
      <body>
      <%
      	int num = 10;
      	int result = 1;
      	for( int i = 1; i <= num; i++){
      		result*=i;
      	}
      %>
      
      
      數字<%= num %>的乘階是: <%= result %>
      
      </body>
      </html>

       

      JSP注釋

      在jsp元素中,可以使用java的標準注釋,也可以使用注釋標<%-- 我是注釋 –%>

       

      JSP方法

      所有<% %>標簽都會被原封不動的翻譯為servlet中doGet這樣的方法中,在方法中是無法定義方法的。

      <%! %>標簽,可以方便的定義自己的方法,它會被翻譯在默認方法外。

      <%! 
      	private int x=0;
      	
      	public String getX(){
      		return x+"";
      	}
      %>
      
      <%
      	number=getX();
      %>
      
      數字<%= number %>

       

      JSP指令

      jsp指令用來聲明JSP頁面的一些屬性等,例如編碼方式,文檔類型。。。格式 <%@ 指令 屬性%>

       

          page指令

      用來聲明jsp頁面的屬性。

      <%@ page language="java" contentType="text/html"; charset=utf-8 %>
      <%-- 多個屬性用;分割 --%>
      
      
      <%-- 也可以這樣寫 ,一個page指令寫一個屬性 --%>
      <%@ page pageEncoding="UTF-8" %>
      <%@ page import="java.util.*" %>

       

      page指令的常見屬性( jsp 2.1規范)

      屬 性 名 稱 取 值 范 圍 描        述

      language

      java

      指明解釋該jsp文件時采用的語言。一般為java,默認為java。

      extends

      任何類的全名

      指明編譯該jsp文件時繼承哪個類。jsp為servlet,因此當指明繼承普通類時需要實現servlet的init、destroy等方法。

      import

      任何包名,類名

      引入包或類。與java中的import作用相同。一個import語句也可以引入多個類:
      <%@ page import=”java.util.List,java.util.ArrayList”%>
      jsp中,以下四個包里的類可以直接使用:
      java.lang.*;javax.servlet.*;javax.servlet.jsp.*;javax.servlet.http.*

      session

      true , false

      指明該jsp是否內置Session對象。默認為true,存儲Session對象

      autoFlush

      true , false

      是否運行緩存,默認為true,使用out.println()輸出字符串,并不是立刻到達客戶端,暫時存在緩存里,等待程序執行完畢或者out.flus(),字符才發送到客戶端。

      buffer

      none 或者
      xx(數字)kb

      當autoFlush為true時,制定緩存大小。例如:
      <%@ page buffer=”10kb” %>

      isThreadSafe

      true , false

      是否線程安全。默認為false,如果為ture,則運行多個線程同時運行該jsp程序,否則只一個線程運行,其它線程等待。

      isErrorPage

      true , false

      指定本jsp是否為錯誤處理頁面。默認為false,如果為true,內置了一個Exception對象exception,可以直接使用

      errorPage

      某個JSP頁面的
      相對路徑

      指明一個錯誤顯示頁面。如果該jsp拋出了一個未被捕捉的異常,則轉到指定的頁面。指定的頁面通常isErrorPage為true。

      contentType

      有效地文檔類型

      客戶端瀏覽器根據該屬性判斷文檔類型。例如:
      HTML : text/html
      純文本格式 : text/plain
      JPG : image/jpeg
      GIF : image/gif
      WORD : application/msword

      info

      任意字符串

      指明jsp信息。該信息可以通過 Servlet.getServletInfo()方法得到。

      trimDirective
      Whitespaces

      true , false

      是否去掉指令前后的空白字符。默認為false。
      輸出XML時,盡量設置為true吧。

       

          include指令

      包含頁面。<%@ include file=”URL” %>

      <%-- url是相對路徑 --%>
      <%@ include file="head.jsp" %>
      
      <body>
      </body>
      
      <%@ include file="foot.jsp" %>

      這里的include是靜態引入,也就是說,tomcat會把引入的jsp編譯為一個class,最后運行的事整合后的servlet。

                  被引入的文件必須遵循JSP語法。

                  被引入的文件可以使用任意的擴展名,即使其擴展名是html,JSP引擎也會按照處理jsp頁面的方式處理它里面的內容,為了見明知意,JSP規范建議使用.jspf(JSP fragments)作為靜態引入文件的擴展名。

                  由于使用include指令將會涉及到2個JSP頁面,并會把2個JSP翻譯成一個servlet,所以這2個JSP頁面的指令不能沖突(除了pageEncoding和導包除外)。

       

      JSP標簽

      JSP Actions,有人叫標簽,有人叫動作,有人叫行為,都是一回事。JSP標簽就是對常用的JSP功能的抽象的封裝,優點就是代碼少,方便維護,代碼美觀。JSP標簽有內置的標準標簽,也可以自定義標簽。這里只說說默認的標簽。

       

          <jsp:include />標簽

      不同于<%@ include %>,<jsp:include />屬于動態包含,也就是不編譯為一個class,而是在運行時分別獲取運行結果然后包含,等同于頁面包含了html,這段html這樣跳轉過去 request.getRequestDispatcher(“URL”).forward(request,response)

      //flush指明,在插入其他資源的輸出內容時,是否先將當前JSP頁面的已輸出的內容刷新到客戶端。
      <jsp:include flush="true" page="/head.jsp"></jsp:include>
      這里是正文
      <jsp:include flush="true" page="/foot.jsp"></jsp:include>

       

          <jsp:forward />標簽
              <jsp:param />標簽

      頁面跳轉,等同于 request.getRequestDispatcher(“URL”).forward(request,response) 。<jsp:param />是轉發時攜帶的地址欄參數。

      注意的是,轉發前不能向瀏覽器輸出內容,否則拋出IllegalStateException

      <jsp:forward page="/login.jsp" >
      	<jsp:param name="username" value="name"/>
      	<jsp:param name="password" value="passwd"/>
      </jsp:forward>

       

          <jsp:useBean />標簽
             
      <jsp:setProperty />標簽
              <jsp:getProperty />標簽

      顧名思義,使用javaBean。格式是這樣的:
      <jsp:useBean id=”beanId” class=”className” scope=”Value” />

      id就是javaBean的變量名,class是完整類名,scope是作用域,有四個作用域:
      page    該jsp內有效
      request   當前request內有效
      session  當前會話(用戶)有效
      application   web應用內有效


      setProperty就是設置屬性
      <jsp:setProperty name=”beanId” property=”p" value=”v” />  beanId就是以聲明的bean的變量名,property為屬性,value是值。
      <jsp:setProperty name=”beanId” property=”*” />  這里,是把request提交內容填充至bean,前提是這個bean必須有對應的屬性。

      getProperty是獲取屬性值
      <jsp:getProperty name=”beanId” property=”p" value=”v” /> 這個就不解釋了。

       

      JSP九大隱藏對象

      out                --javax.servlet.jsp.JspWriter
      request          --javax.servlet.ServletRequest
      response        --javax.servlet.ServletResponse
      config           --javax.servlet.ServletConfig
      session          --javax.servlet.http.HttpSession
      application     --javax.servlet.ServletContext
      page              --javax.servlet.jsp.HttpJspPage  這個就等于 this
      pageContext   --javax.servlet.jsp.PageContext  這個很重要,它代表了jsp的運行環境,可以獲得這上面所有對象
      exception       --java.lang.Exception

       

      JSP配置

      <servlet>
      	<!-- 轉換后的servlet的訪問名稱 -->
      	<servlet-name>SimpleJspServlet</servlet-name>
      	<!-- jsp文件 -->
      	<jsp-file>/jsp/simple.jsp</jsp-file>
      </servlet>
      
      
      <!-- jsp映射 -->
      <servlet-mapping>
      	<!-- 需要映射的jsp servlet -->
      	<servlet-name>SimpleJspServlet</servlet-name>
      	<!-- 映射地址 -->
      	<url-pattern>/xxx/yyy.html</url-pattern>
      </servlet-mapping>

      posted on 2011-06-09 17:57  黑暗伯爵  閱讀(1219)  評論(0)    收藏  舉報

      導航

      主站蜘蛛池模板: 亚洲肥老太bbw中国熟女| 久在线精品视频线观看| 激情影院内射美女| 91精品午夜福利在线观看| 日本黄色一区二区三区四区| 午夜精品久久久久久久久| 视频一区视频二区制服丝袜| 亚洲精品乱码久久久久久按摩高清 | 中文无码日韩欧免费视频| 中文字幕av无码不卡| 国产乱色国产精品免费视频| 国产福利在线观看免费第一福利 | 国产精品人妻中文字幕| 亚洲午夜久久久影院伊人| 免费A级毛片中文字幕| 国产又色又爽又黄刺激视频| 蜜臀精品视频一区二区三区| 鲁一鲁一鲁一鲁一澡| 色猫咪av在线观看| 国产午夜A理论毛片| 亚洲最大的成人网站| 男女啪啪18禁无遮挡激烈| 精品人妻一区二区三区四区在线| 国产一区二区三区九九视频| 国产成人啪精品视频免费网| 亚洲AV无码一二区三区在线播放| 99在线小视频| 国产高清国产精品国产专区| 91久久精品美女高潮不断| 永久免费无码av在线网站| 18禁无遮拦无码国产在线播放| 成人亚洲国产精品一区不卡| 中文 在线 日韩 亚洲 欧美| brazzers欧美巨大| 亚洲综合小说另类图片五月天| 苍溪县| 国产精品三级爽片免费看| 狠狠爱五月丁香亚洲综| 田东县| gogogo高清在线播放免费| 中文字幕乱码一区二区免费 |