關于Tomcat 6的熱部署和熱加載 轉

          http://greemranqq.iteye.com/blog/1774258 
          http://www.cnblogs.com/-lpf/p/4317281.html
          我在項目開發過程中,經常要改動JAVA/JSP 文件,但是又不想從新啟動服務器(服務器從新啟動花時間),想直接獲得(debug)結果.有兩種方式熱部署 和熱加載:

           

          1.熱加載:在server.xml -> context 屬性中 設置 reloadable="true"

           

          Java代碼  收藏代碼
          1. <Context docBase="xxx" path="/xxx" reloadable="true"/>  

              

           

          2. 熱部署:在server.xml -> context 屬性中 設置  autoDeploy="true"

            

          Java代碼  收藏代碼
          1. <Context docBase="xxx" path="/xxx" autoDeploy="true"/>  

           

          3.區別:

                熱加載:服務器會監聽 class 文件改變,局部進行加載,不清空session ,不釋放內存。開發中用的多,但是要考慮內存溢出的情況。

           

                熱部署: 整個項目從新部署,包括你從新打上.war 文件。 會清空session ,釋放內存。項目打包的時候用的多。

           

          也可以通過Eclipse上設置實現上述配置文件的修改 

          Eclipse的工程名右鍵: properties->Tomcat->General->Make this context as reloadable(reloadable="true")不要選中 Eclipse的工程名右鍵:Tomcat project->Update Context Definition

           

          注意:source 屬性有些版本不支持,容易出錯,去掉就行 

          二。

          不重啟Tomcat有兩種方式:熱部署、熱加載 
            熱部署:容器狀況在運行時重新部署整個項目。這類環境下一般整個內存會清空,重新加載,這類方式 
            有可能會造成sessin丟失等環境。tomcat 6確實可以熱部署了,而且對話也沒丟. 
            熱加載:最好是在調試過程中使用,免患上整個項目加載,Debug標準樣式支持熱加載。容器狀況在運行時重 
            新加載轉變編譯后的類。在這類環境下內存不會清空,sessin不會丟失,但容易造成內存溢出,或者找不到方 
            法。一般轉變類的布局和模型就會有異常,在已經有的變量和方法中轉變是不會出問題的(Eclipse、 
            MyEclipse8、JBuilder、IntelliJ IDEA…)。 
            常用的一定第二種:熱加載了,設置如下! 
            在tomcat的conf中的server.xml中的host設置中添加<Context path="/test" 
            docBase="D:/develop/test" 
            debug="0" privileged="true" reloadable="true"/> 
            reloadable="true" !最重要 
            它內里有很多屬性,意義如下: 
            1>path:指定拜候該web應用的URL進口; 
            2>docBase:指定web應用的文件路徑,可以給定絕對路徑,也可以給定相對于<Host>的appBase屬性【默認 
            指向tomcat的webapps】的相對于徑;要是Web應用是個war文件,則指定war文件的路徑。 
            3>className:指定使成為事實Context組件的Java類的名字,這個Java類必須使成為事實org.apache.catalina.Context 
            接口,該屬性的默認值為org.apache.catalina.StandardContext。 
            4>reloadable:要是這個屬性設置為true,Tomcat服務器在運行狀況下會監視在WEB-INF/classess和WEB- 
            INF/lib目次下的class文件的改動,以及監視web應用的WEB-INF/web.xml文件的改動。要是檢測到的class 
            文件或者web.xml文件被更新,服務器會自動加載Web應用。該屬性的默認值為false.在web應用的開發和調 
            試階段,把reloadable設為true,可以方便對web應用的調試。在web應用正式發布階段,把reloadable設為 
            false,可以減低tomcat的運行負荷,提高Tomcat的運行性能。 
            5>cachingAllowed:要是為true,標示允許啟用靜態資源的緩存。使用緩存能提高拜候靜態資源的效率。 
            tomcat把那一些時常被客戶端拜候的靜態資源(如:HTML文檔、圖片文件和聲響文件等)放在緩存中,當客戶再 
            次拜候有關靜態資源時,Tomcat只需直接從緩存中讀取相關數據,無須反復讀取文件系統中的文件。該屬 
            性的默認值為true. 
            6>cacheMaxSize:設定靜態資源的緩存的最大容量,以K為單元。要是,要是該屬性為100,表示100K,默認 
            為10240(即10M)。 
            7>workDir:指定web應用的工作目次。Tomcat在運行時會把與這個web應用相關的臨應試文章件放在此目次下。 
            8>uppackWar:要是此項設為true,表示將把web應用的war文件睜開為開放目次布局后再運行。要是設為 
            false,則直接運行war文件。該屬性的默認值為true。 
            同志們,使用tomcat6.0的注意了啊。當你使用我的方法設置tomcat后,你的myeclipse報如下錯誤時,不要驚慌,這是正確的,且聽我解釋。 
            console報錯: 
            警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property ' debug' to '0' did not find a matching property. 這是由于你使用的是tomcat6.0,由于它路程經過過程其他途徑對debug="0"這個屬性進行了使成為事實,所以這搭不能再有此屬性。你只要將它去掉,就能夠沒事了啟動了。 也就是說去掉debug="0“,萬事OK,呵呵。 


          (轉)

          -------------------------------------------------------------

          針對需要重新啟動tomcat的服務,重新啟動方式為:

          安裝版:tomcat/bin/shotdown.bat      關閉tomcat服務

                    tomcat/bin/startup.bat         開啟tomcat服務

          或者-->我的電腦-->管理-->服務和應用程序/服務-->找到Apache Tomcat重啟

          posted on 2016-06-19 21:03 youngturk 閱讀(280) 評論(0)  編輯  收藏 所屬分類: 筆試題

          <2016年6月>
          2930311234
          567891011
          12131415161718
          19202122232425
          262728293012
          3456789

          導航

          統計

          公告

          this year :
          1 jQuery
          2 freemarker
          3 框架結構
          4 口語英語

          常用鏈接

          留言簿(6)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          EJB學習

          Flex學習

          learn English

          oracle

          spring MVC web service

          SQL

          Struts

          生活保健

          解析文件

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 当雄县| 苗栗县| 汉寿县| 子长县| 浦县| 瑞丽市| 平定县| 桃园市| 乌鲁木齐县| 合川市| 澄江县| 竹溪县| 朝阳区| 凤冈县| 博兴县| 高阳县| 红原县| 新绛县| 自贡市| 呼和浩特市| 交口县| 虞城县| 唐山市| 田林县| 晋中市| 新郑市| 海口市| 陇川县| 德令哈市| 武邑县| 浦东新区| 涟源市| 龙门县| 上蔡县| 永顺县| 龙南县| 上犹县| 岢岚县| 玛纳斯县| 雅江县| 修武县|