Java Web(六) EL表達式


    這也是屬於JSP范圍內的知識,使用EL表達式,能更好的使用JSP中的各種內置對象和作用域,說點閑話,馬上要出去實習了,有點恐慌,可能這是馬上要出去工作的學生的通病,繼續努力把,兵來將擋水來土掩,

                            --WZY

一、EL表達式

    JSP中可以使用EL表達式,EL表達式是用"${}"括起來的腳本,用來更方便地讀取對象,EL表達式寫在JSP的HTML代碼中,而不能寫在"<%%>"引起的JSP腳本中,現在就來了解一下,EL表達式是如何來替代JSP腳本或者JSP行為的。

    EL表達式有11個內置對象。

       pageScope、requestScope、sessionScope、applicationScopepageContext、param、paramValues、header、headerValues、cookie、initParam

    pageScope、requestScope、sessionScope、applicationScope代表四個作用域對象

    pageContext  表示的是JSP中內置對象pageContext,能獲取request等其他JSP八大內置對象  

    param  表示一個請求參數  ${param.username}  等效  request.getParameter("username");

    paramValues  表示一組請求參數  ${paramValues.loves}  等效request.getParameterValues("loves");  提交喜愛這種多選框    

    header  表示一個請求頭  ${header.referer}  等效request.getHeader("referer");

    headerValues  表示一組請求頭  ${header.cookie}  等效 request.getHeaders("cookie");  獲取的請求頭參數中的內容是一組內容,比如cookie就有可以是多個cookie一起傳過來

    cookie  獲得cookie對象

    initPatam  web項目初始化參數,servletContext.getInitParameter("xxx");

    

    還有一種特殊的用法,直接獲取對象變量,

      ${user.username}

       user為User的一個實例對象,並且存放在page作用域中,上面這句代碼的意思是,依次從page、request、session、application作用域查找user對象,直到找到為止,底層使用的是pageContext.findAttribute(); 是一樣的效果。

 

    實例講解:

        

      

    總結:

      EL表達式比較簡單,使用它的目的是為了減少JSP腳本,盡量不要在HTML中嵌入Java代碼,顯的很混亂,而在HTML中使用EL表達式,就比較好來獲取JSP中各種對象,獲取四大作用域中的值,

      如果要獲取四大作用域中的數據,則可以使用${}、${pageScope.xxx} 

      如果想要獲取請求參數,則使用param或paramValues

      如果想要獲取請求頭中的一些信息,獲取想要獲取Servlet的一些對象,比如request、session等,可以使用pageContext來獲取request對象,然后在獲取所需要的信息,或者直接使用header對象來獲取頭信息

      如果想獲取web初始化參數,則使用initPatam

 

      el表達式的運算就不講解了,很簡單,基本上能用的都可以用。

  

      最主要的是要記得EL中有哪11個內置對象,知道了他們就知道了EL可以獲取哪些信息。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM