首先,我們要了解jsp運行原理。JSP的本質就是一個Servlet,JSP的運行之前會先被Tomcat服務器翻譯為.java文件,然后在將.java文本編譯
為.class文件,而我們在訪問jsp時,處理請求的就是那個翻譯后的類。
1.<% %>叫做腳本片段,其中寫的內容會翻譯在Servlet的Service方法中,顯然我們可以在Service方法中定義局部變量或者調用其他方法,但是不能
在Service中再定義其他的方法,也就是我們可以在<%%>中定義局部變量或者調用方法,但不能定義方法。在jsp頁面可以有多個腳本片段,但是多
個腳本片段之間要保證結構完整。
2.<%!%>稱作聲明,其中寫的內容將來會直接翻譯在Servlet類中,因為我們可以在類中定義方法和屬性以及全局變量,所以我們可以在<%!%>中聲
明方法、屬性、全局變量。
3.<%=%>稱作jsp表達式,用於將已經聲明的變量或者表達式輸出到網頁上面。
4.直接寫在jsp頁面<body></body>中的代碼稱作模板元素,將來會Servlet的Service方法中的out.write("___")中,作為輸出內容。
下面,我們舉兩個例子:
示例1:
1 <body> 2 <% for (int i=0;i<3;i++) {%> 3 out.print(i*2); 4 <%} %> 5 </body>
頁面內容:
示例2:
1 <body> 2 <%! int sum=1; %> 3 <% int sum=8; %> 4 <h3>----<% out.print(sum++); %></h3> 5 <h3>----<%= this.sum %></h3> 6 </body>
頁面內容: