jsp定位和包含導入

jsp資源定位問題

相對定位
相對定位,這種方式適合於頁面和資源不再發生變化,在實際開發中,相對定位使用不多。

./03.jsp  當前路徑
./pages/03.jsp    當前路徑下pages下

絕對定位
絕對定位方式是我們編程中使用最爲常用的方式,推薦使用絕對定位。

/表示根路徑

注意:jsp的標籤和指令中,默認已經加了上下文路徑(爲了編程方便)。
html:在實際開發中,不建議直接寫上下文路徑,建議使用api自動獲取上下文。
jsp不會爲html自動加入上下文路徑,所以說需要web開發,那麼在所有html標籤中,進行資源引入的時候,建議使用絕對路徑引入,同時使用href="<%=request.getContextPath()%>/pages/02.jsp"生成上下文路徑。

jsp的靜態包含和動態包含

公共部分,一樣的部分代碼抽取出來,作爲一個獨立的部分,導入需要的地方。
1、靜態包含
使用jsp的include指令完成
<%@ include file="/common/top.jsp" %>
靜態包含,會把需要導入的直接導入頁面、需要導入的頁面會被作爲頁面的一部分直接寫入到頁面裏。
2、動態包含
動態包含,僅僅是引入需要的資源,兩者還是分離的。
<jsp:include page="/common/top.jsp"></jsp:include>

注意:在實際開發中,動態包含使用更多,因爲定義變量不會衝突。但是如果當權限判斷,登錄判斷等需要跳轉時,建議使用靜態包含。
公共部分

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
 <ul style="color: red;">
            <li><a href="#">首頁</a></li>
            <li><a href="#">登錄</a></li>
            <li><a href="#">註冊</a></li>
            <li><a href="#">註銷</a></li>
            <li><a href="#">訂單</a></li>
            
 </ul>

列表部分

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
      <%--  <%@ include file="/common/top.jsp" %>  --%>
      <jsp:include page="/common/top.jsp"></jsp:include>
       <h1>商品列表頁面</h1>
     <%--   <%
      String name="lilei";
       %>
       --%>
</body>
</html>

執行結果
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章