Jsp複習(詳細的知識點)day01

Jsp複習(詳細的知識點)

JSP(java Server Page)
他就是servlet,也是java類。經過jsp引擎把jsp轉譯成了servlet
jsp~java+html

動態網頁技術,動態生成網頁數據,而不是有動態效果的網頁
常見的幾種動態網頁技術:
    Jsp   Asp(Active Server Page)微軟  Php(Hypertext Preprocessor)超級文本預處理語言
    
1.Servlet:優勢-邏輯處理方便    缺點:頁面表現麻煩
Jsp:優勢--頁面表現麻煩  缺點--邏輯處理麻煩

實際就是:jsp偏向於視圖,servlet偏向於邏輯控制
因此要互補使用,通常項目都採用:jsp+servlet+javabean
(固然,學了ssh後,能夠採用ssh框架)

JSP語法
三種不一樣的指令:
編譯器指令:
    include--
        靜態導入<%@ include file="login.jsp"%>
            是在servlet引擎轉譯時,就把地址文件內容包含了進去(兩個文件
        的源代碼整合到一塊兒,所有放到jspService方法中),因此只生成了一個
        servlet,因此兩個頁面不能有同名的變量。
        運行效率高一點點,耦合性較高,不夠靈活
        動態導入<jsp:include page="login.jsp"></jsp:include>
              是在servlet引擎轉譯後,請求的此頁面,因此共生成了兩個
        servlet,因此能夠有同名變量
        生成兩個servlet,至關於兩個類之間的調用,耦合性較低,很是靈活

    page--引入import包,contentType配置,errorPage錯誤頁面
    taglib --引入標籤庫
腳本語法
    註釋:<!-- -->,  隱藏註釋<%-- --%>也就是轉譯後的java代碼中沒喲此項語句

    聲明:<%! %>    能夠在裏邊聲明定義成員變量方法
        能夠定義在<% %>後邊也能調用<%! %>裏邊的方法
        例如:
        <%  test(); %>
        <%! int hh=1;
            void test(){
            System.out.println("66666");
            }
        %>

    表達式:<%= %>    至關於打印out.print();

    java腳本段:<% %>

動做語法:<jsp:forward page="">
        <jsp:param value="參數" name=""/>
      </jsp:forward>   以後的代碼<%不執行%>    

    <jsp:include page="可傳參" >不能有空格換行</jsp:include>,
            <jsp:param value="參數" name=""/>
    <jsp:plugin>
    
    <jsp:getProperty property="uname" name="u1" value="zahngsan"></jsp:getProperty>
    源碼<%
        User user=(User)pageContext.getAttribute("u1");
        user.setUname("zhangsan");
    %>
    做用域的尋找順序從小到大:pageContext/request/session/application
    
    <jsp:setProperty>,
    
    <jsp:useBean id="u1" class="com.bjsxt.login.User" scope="page"></jsp:useBean>至關於
        <%
          pageContext.setAttribute("u1",new User());
        %>


jsp內置對象:有9大內置對象(包含做用域),四大做用域
    
    requset--對象表明的是來自客戶端的請求,經過
    getParameter,getParameterNames,getParameterValues
    調用這幾個方法來獲取請求對象中包含的參數的值
    
    response--對象表明的是對客戶端的響應,也就是說
    能夠經過response對象來組織發送到客戶端的數據。
    可是因爲組織方式比較底層,因此不建議使用,須要向客戶端
    發送文字時直接使用out對象便可。

    out--對象表明了向客戶端發送數據的對象,與 response對象不一樣,
    經過out對象發送的內容是瀏覽器須要顯示的內容,是文本一級的,
    能夠經過out對象直接向客戶端寫一個由程序動態生成HTML文件。
    經常使用的方法除了print和println以外,還包括clear,clearBuffer,flush
    getBufferSize和getRemaining,這是由於out 對象內部還包含了一個緩衝區
    因此須要一些緩衝區進行操做的方法。
    
    session--對象表明服務器與客戶端所創建的會話,當須要在不一樣的 jsp頁面中
    保留客戶信息的狀況下使用,好比在線購物,客戶軌跡跟蹤等
    
    application--對象負責提供應用程序在服務器中運行的一些全局信息,
    經常使用的方法有getMimeType和getRealPath等
    
    pageContext--頁面上下文對象
    封裝了當前jsp頁面的運行信息,它提供了返回jsp頁面的其餘隱式對象的方法
    經過它能夠調用其餘內置對象信息
    例如:pageContext.forward("2.jsp");轉向

    config--對象提供一些配置信息,經常使用的方法有getlnitParameter和getlnitParameterNames
    以得到Servlet初始化時的參數

    page--對象表明正在運行的由jsp文件產生的類對象,通常不建議使用

    exeception--對象則表明了jsp文件運行時所產生的例外對象,此對象不能直接使用。
    而只能在使用了<%@ page isErrorPage="true" %>的jsp文件中使用.




html

相關文章
相關標籤/搜索