1. 程式人生 > >jsp的基礎語法

jsp的基礎語法

jsp中有兩種方法呼叫java程式碼

1)EL表示式2)<%>方式呼叫java程式碼

 但要儘量少用java程式碼<% java程式碼>,最好用EL表示式來代替 ${name}:代表著用了getName()的方法(但資料需先存入域物件中)


Jsp的9大內建物件jsp中java程式碼中對應的物件
request     HttpServletRequest
response   HttpServletResponse
config       ServletConfig
application    ServletContext
session       HttpSession
exception     Throwable
page         Object
out         JspWriter
pageContext   PageContext

   pageContext物件:jsp的上下文物件(pageContext能夠獲得其他8大物件)
   
El的11內建物件:pageContext上面這5個物件是呼叫el表示式時,若在java端存入了pageContext域中,這裡可以通過${pageContext.鍵值}獲取(jsp中)
pageScope
requestScope
sessionScope

applicatinoScope

param 獲取引數:${param['name']} = <%=request.getParameter("name") %> 
paramValues 獲取同名引數:${paramValues['name'][0] }-${paramValues['name'][1] }
header 獲取頭:${header['host'] } = <%=request.getHeader("host") %>
headerValues 獲取同名頭:${headerValues['host'][0] }
cookie 獲取cookie:${cookie['JSESSIONID'].name } - ${cookie['JSESSIONID'].value }
initParam 獲取全域性引數:${initParam['AAA'] }

   
EL表示式無指定域時搜尋域的順序: page域 -》 request域 -> session域 -》 application域 -》 null(EL表示式若無指定域,則會從小到大去搜索)
域物件的作用範圍:
   PageContext:page域: 在當前jsp頁面中資料有效的!
HttpServletRequest:request域: 當前同一個請求中資料有效的!
HttpSession: session域: 當前同一個session(會話)中資料有效的!
ServletContext:application域: 當前同一個網站中資料有效的!

 <%--獲取上下文路徑 --%>

     ${pageContext.request.contextPath }  
     
     ${empty name}(判斷是否為空字串或null)
     
jsp標籤:
<jsp:forward page="/05.action2.jsp">(轉發)
<jsp:param value="eric" name="name"/>(傳引數)
<jsp:param value="jacky" name="name"/>      
    </jsp:forward>