(1):對於Tomcat而言,JSP頁面生成的Java文件放在work路徑對應的Web應用下。例如:
D:/Tomcat5.5/webapps/test/test.jsp
生成對應的java文件
D:/Tomcat5.5/work/Standalone/localhost/test/
對於Resin而言,JSP頁面生成的Java文件放在WEB-INF/work路徑對應的Web應用下。例如:
D:/Resin3.1.6/webapps/test/demo/test.jsp
生成對應的java文件
D:/Resin3.1.6/WEB-INF/work/_demo/_test.java/
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代碼加感嘆號與不加感嘆號的區別的問題。
當需要自定義Jsp生成的Java文件位置時,可以通過如下兩種方法來實現:
方法1.在tomcat的配置文件server.xml(路徑:tomcat路徑\conf下面)里,找到:<Context docBase="D:/workspace/icinfo/trunk/web" path="" reloadable="false" debug="0" crossContext="true" workDir="D:/workspace/icinfo/trunk/web/WEB-INF/lib/CommonPKI/META-INF/work"/>,添加如上的workDir=""屬性,""里寫你的要看到.java/.class的路徑.
方法2.到conf/Catalina/localhost下找到你項目的.xml培植文件,找到方法1中的代碼,後續操作同方法1.
在weblogic.xml中加入:
看看web應用在Weblogic中生成臨時文件中,有Java文件了。
⑵ jsp文件編譯成java文件後保存在哪個文件夾
根據具體情況會稍微有點差別,如果在ROOT目錄中
Tomcat5.0\work\Catalina\localhost\_\org\apachc\jsp目錄
如果再給出的目錄中
Tomcat5.0\work\Catalina\localhost\_\org\apachc\jsp\給出目錄
⑶ jsp生成的java文件保存在哪裡
看到樓主這個問題雖然久遠,但看到朋友們給的答案我還是稍稍回答一下吧,為了以後有朋友也想要知道明確的答案行個方便。
想找到JSP生成的位元組碼文件還是Java文件,這得看你載入Web應用是自己配置的Tomcat還是載入到Eclipse默認路徑下:
先說Eclipse默認路徑下的吧,其路徑為:
你的eclipse存放工程的文件夾\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\要找的JSP頁面對應工程名\org\apache\jsp
如果是載入的Web應用就在Tomcat下,其路徑為:
磁碟:\apache-tomcat-7.0.56\work\Catalina\localhost\要找的JSP頁面對應工程名\org\apache\jsp
⑷ resin 中jsp 編譯之後的java文件在哪裡
resin 中jsp 編譯之後的java文件位置:
對於Resin而言,JSP頁面生成的Java文件放在WEB-INF/work路徑對應的Web應用下。
例如:
resin的安裝路徑/webapps/test/demo/test.jsp
生成對應的java文件
resin的安裝路徑/WEB-INF/work/_demo/_test.java/