jsp的基礎語法
阿新 • • 發佈:2019-01-26
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
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域: 當前同一個網站中資料有效的!
<%--獲取上下文路徑 --%>
${empty name}(判斷是否為空字串或null)
jsp標籤:
<jsp:forward page="/05.action2.jsp">(轉發)
<jsp:param value="eric" name="name"/>(傳引數)
<jsp:param value="jacky" name="name"/>
</jsp:forward>