記憶盒子

把記憶裝進(jìn)灰色的盒子,封裝起來,那年那月,重新拾起。

首頁搜索目錄
search
當(dāng)前主題: 軟件編程

怎樣查看Jsp編譯后生成的Java文件

作者:Kaka    時(shí)間:2009-10-23 22:2:16    瀏覽:    評(píng)論:1

      可能大多數(shù)Jsp開發(fā)員在寫完程序測試通過后,不太會(huì)關(guān)注Jsp生成的Java文件,其實(shí),通過Java代碼,更能體現(xiàn)程序代碼的真正含義,對(duì)進(jìn)一步研究程序代碼的后臺(tái)運(yùn)行情況是非常有幫助的。例如,用Jsp編寫代碼時(shí),有時(shí)候用<%!   %>,有時(shí)候用<%   %>,加不加感嘆號(hào),到底有什么不同嗎? (Jsp代碼加感嘆號(hào)與不加感嘆號(hào)的區(qū)別)這類問題在教程里一般不會(huì)涉及到,從哪里找到問題的突破口呢——Jsp生成的Java文件!所以,對(duì)于Jsp開發(fā),有必要知道這點(diǎn)技能。

      對(duì)于Tomcat而言,JSP頁面生成的Java文件放在work路徑對(duì)應(yīng)的Web應(yīng)用下。例如:

      D:\Tomcat5.5\webapps\test\test.jsp

      生成對(duì)應(yīng)的java文件

      D:\Tomcat5.5\work\Standalone\localhost\test\

      Jsp與Servlet的關(guān)系

      1、 JSP文件必須在JSP服務(wù)器內(nèi)運(yùn)行。

      2、 JSP文件必須生成Servlet才能執(zhí)行。

      3、 每個(gè)JSP頁面的第一個(gè)訪問者速度很慢,因?yàn)楸仨毜却齁SP編譯成Servlet。

      4、 JSP頁面的訪問者無須安裝任何客戶端,甚至不需要可以運(yùn)行Java的運(yùn)行環(huán)境,因?yàn)镴SP頁面輸送到客戶端的是標(biāo)準(zhǔn)HTML頁面。

      5、 JSP頁面的靜態(tài)內(nèi)容、JSP腳本都會(huì)轉(zhuǎn)換成Servlet的xxxService()方法,類似于自行創(chuàng)建Servlet時(shí)service()方法。

      6、 JSP聲明部分,轉(zhuǎn)換成Servlet的成員部分。所有JSP聲明部分可以使用private,protected,public,static等修飾符,其他地方則不行。

      7、 JSP的輸出表達(dá)式(<%= ..%>部分),輸出表達(dá)式會(huì)轉(zhuǎn)換成Servlet的xxxService()方法里的輸出語句。

      8、 九個(gè)內(nèi)置對(duì)象要么是xxxService()方法的形參,要么是該方法的局部變量,所以九個(gè)內(nèi)置對(duì)象只能在JSP腳本和輸出表達(dá)式中使用。

      從上述第5、6點(diǎn),其實(shí)就可以解釋Jsp代碼加感嘆號(hào)與不加感嘆號(hào)的區(qū)別的問題。

      如何在Tomcat下指定Jsp生成的Java文件路徑?

      當(dāng)需要自定義Jsp生成的Java文件位置時(shí),可以通過如下兩種方法來實(shí)現(xiàn):

      方法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下找到你項(xiàng)目的.xml培植文件,找到方法1中的代碼,后續(xù)操作同方法1.

      怎樣保留Weblogic 中Jsp編譯后生成的Java文件?

      運(yùn)行自己配置的web應(yīng)用,往往只能看見weblogic編譯之后的class文件。而看不見編譯前的java的文件。為了調(diào)試方便,我們有時(shí)候是想看編譯前的java文件的。

      在weblogic.xml中加入:

<jsp-descriptor>
  <jsp-param>
    <param-name>keepgenerated</param-name>
    <param-value>true</param-value>
  </jsp-param>
</jsp-descriptor>
 

      即可。如果沒有,在WEB-INF中建立一個(gè)weblogic.xml文件。增加:

<?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE weblogic-web-app
    PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN"
    "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd" >
<weblogic-web-app>
    <jsp-descriptor>
        <jsp-param>
            <param-name>keepgenerated</param-name>
            <param-value>true</param-value>
        </jsp-param>
    </jsp-descriptor>
</weblogic-web-app>
 

      看看web應(yīng)用在Weblogic中生成臨時(shí)文件中,有Java文件了吧!

x

標(biāo)簽: Java  

※ 網(wǎng)站速度慢?試試網(wǎng)站自動(dòng)優(yōu)化工具 ※

上一篇: 搜索時(shí)為什么出現(xiàn)Google的G.cn漸隱廣告
下一篇: 你的Google網(wǎng)站管理員工具里有PageRank頁面嗎
  • 1.天***
  • 以后要多跟博主學(xué)學(xué)JSP了
    Liwen 于 2009-10-24 23:46:41 回復(fù)
    我一直是搞asp+asp.net的,因項(xiàng)目需要,Jsp是剛接觸。 :)
  • 2009/10/24 22:40:16 回復(fù)該留言

發(fā)表評(píng)論:

◎歡迎參與討論,請(qǐng)?jiān)谶@里發(fā)表您的看法、交流您的觀點(diǎn)。

訂閱博客                   QQ交流群(312716741)

  • 通過Google訂閱本站 通過鮮果訂閱本站 通過抓蝦訂閱本站
  • 通過QQ郵箱訂閱本站 通過Yahoo訂閱本站 通過有道訂閱本站

Search

最新評(píng)論及回復(fù)

最近留言

網(wǎng)站分類

Powered By Z-Blog 1.8 Walle Build 91204 Designed by Han'space

Copyright @2009-2024 All Rights Reserved. 粵ICP備14028160號(hào)-1

Powered By Z-Blog 1.8 Walle Build 91204
Copyright @2009-2024 All Rights Reserved.