關於jsp語法的小tip
阿新 • • 發佈:2019-02-14
在JSP中 宣告表示式<%! int a = 3 ; %> 中 定義的是全域性變數。
在jsp指令碼段中 <% int b = 3; %> 宣告的變數是區域性變數。
servlet是單例的。所以通過宣告表示式定義的變數只有一份,會被使用者客戶端共享到。
******************
在使用jsp的<%@ include file="*.jsp" %> 的這條包含其他頁面的語句時;
不能在被包含頁面中含有 :
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
這個Java的指令碼段。否則會失敗。
*********************************
<jsp:forward > 用於頁面的轉向,該語句後的語句都不會執行。
***********************************
<jsp:include > 在包含的時候還可以向被包含頁面傳遞引數。而<%@ include file="" %> 這個東西是做不到的。
*********************************************************************************************************
request.getParameter() 方法和 request.getAttrbute()方法是不一樣的。getParameter()方法的資料是從客戶端拿來的,而
getAttribute()的資料是在伺服器端內部自己設定的。setAttribute()方法一般和getAttribute()方法成對出現。
在jsp指令碼段中 <% int b = 3; %> 宣告的變數是區域性變數。
servlet是單例的。所以通過宣告表示式定義的變數只有一份,會被使用者客戶端共享到。
******************
在使用jsp的<%@ include file="*.jsp" %> 的這條包含其他頁面的語句時;
不能在被包含頁面中含有 :
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
這個Java的指令碼段。否則會失敗。
*********************************
<jsp:forward > 用於頁面的轉向,該語句後的語句都不會執行。
***********************************
<jsp:include > 在包含的時候還可以向被包含頁面傳遞引數。而<%@ include file="" %> 這個東西是做不到的。
*********************************************************************************************************
request.getParameter() 方法和 request.getAttrbute()方法是不一樣的。getParameter()方法的資料是從客戶端拿來的,而
getAttribute()的資料是在伺服器端內部自己設定的。setAttribute()方法一般和getAttribute()方法成對出現。