可能大多數Jsp開發員在寫完程式測試通過後,不太會關注Jsp產生的Java文件,其實,透過Java程式碼,更能體現程式碼的真正意義,對進一步研究程式碼的後台運行情況是非常有幫助的。
例如,用Jsp寫程式碼時,有時候用<%! %>,有時候用<% %>,加上驚嘆號,到底有什麼不同嗎? (Jsp程式碼加上感嘆號與不加感嘆號的差別)這類問題在教學裡一般不會涉及到,從哪裡找到問題的突破口呢-Jsp產生的Java檔!所以,對於Jsp開發,有必要知道這點技能。
對於Tomcat而言,JSP頁面產生的Java檔案放在work路徑對應的Web應用下。例如:
D:/Tomcat5.5/webapps/test/test.jsp
產生對應的java檔案
D:/Tomcat5.5/work /Standalone/localhost/test/test.java
Jsp與Servlet的關係式
1、 JSP檔案必須在JSP伺服器內運作。
2、 JSP檔案必須產生Servlet才能執行。
3、 每個JSP頁面的第一個訪客速度很慢,因為必須等待JSP編譯成Servlet。
4、JSP頁面的訪客無須安裝任何客戶端,甚至不需要可以執行Java的運作環境,因為JSP頁面輸送到客戶端的是標準HTML頁面。
5、JSP頁面的靜態內容、JSP腳本都會轉換成Servlet的xxxService()方法,類似自行建立Servlet時service()方法。
6、JSP宣告部分,轉換成Servlet的成員部分。所有JSP聲明部分可以使用private,protected,public,static等修飾符,其他地方則不行。
7、JSP的輸出表達式(<%= ..%>部分),輸出表達式會轉換成Servlet的xxxService()方法裡的輸出語句。
8、九個內建物件要麼是xxxService()方法的形參,要麼是該方法的局部變量,所以九個內建物件只能在JSP腳本和輸出表達式中使用。
從上述第5、6點,其實就可以解釋Jsp程式碼加感嘆號與不加感嘆號的差別的問題。
如何在Tomcat下指定Jsp產生的Java檔案路徑?
當需要自訂Jsp產生的Java檔案位置時,可以透過以下兩種方法來實現:
方法1.在tomcat的設定檔server.xml(路徑:tomcat路徑\conf下面)裡,找到:
方法2.到conf/Catalina/localhost下找到你專案的. xml設定文件,找到方法1中的程式碼,後續操作同方法1.
以上是jsp編譯後是什麼文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!