1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 熱部署javaweb應(yīng)用程序的方法

        時(shí)間:2020-10-05 15:39:27 JAVA認(rèn)證 我要投稿

        熱部署javaweb應(yīng)用程序的方法

          對于Java應(yīng)用程序來說,熱部署就是在運(yùn)行時(shí)更新Java類文件。在基于Java的應(yīng)用服務(wù)器實(shí)現(xiàn)熱部署的過程中,類裝入器扮演著重要的角色。大多數(shù)基于Java的應(yīng)用服務(wù)器,包括EJB服務(wù)器和Servlet容器,都支持熱部署。類裝入器不能重新裝入一個(gè)已經(jīng)裝入的類,但只要使用一個(gè)新的類裝入器實(shí)例,就可以將類再次裝入一個(gè)正在運(yùn)行的應(yīng)用程序。

          一、熱部署介紹

          熱部署對于程序開發(fā)的好處就不用多說了,這里記錄一下自己的使用過程:

          1.myeclipse的年代,那時(shí)候通過myeclipse新建的web項(xiàng)目,通過debug方式啟動(dòng),可以獲得修改java類中的方法體和jsp頁面立即生效的功能;這是純eclipse所沒有的。

          2.后來出了jrebel可以獲得新增java類和方法也無需重啟應(yīng)用服務(wù)器即可生效的功能,當(dāng)然這個(gè)功能不完美,有缺陷。

          3.隨著eclipse的升級,推出了Jee版本的eclipse,也就逐漸淘汰了myeclipse,但是JEE版本的eclipse和tomcat配合,即便使用debug模式啟動(dòng),修改java類還是會(huì)導(dǎo)致整個(gè)應(yīng)用的重新加載,這是不能忍受的,這時(shí)候,發(fā)現(xiàn)了jetty配合JEE版本的 eclipse可以完美的實(shí)現(xiàn)熱加載,即改即用,很方便。

          二、熱部署過程

          先做個(gè)說明,沒有熱部署和有熱部署的開發(fā)效率真是天差地別的。所以熱部署受很多第三方軟件包(Struts,Spring,Hibernate)的限制。本來可以熱部署的,加入了第三方的包就不可以了。所以,先說明詳細(xì)的軟件環(huán)境,和程序配置是非常必要的。

          虛擬機(jī):java Tomcat Eclipse Myeclipse

          應(yīng)用程序情況:純正的.sertlet+jsp+javabean,數(shù)據(jù)庫連接使用JDBC-ODBC橋連接Access數(shù)據(jù)庫。沒有使用任何第三方軟件包,沒有使用Struts,Spring,Hibernate.\WebRoot\WEB-INF\lib下是空的。

          配置方法:

          ie登陸http://Tomcat所在的服務(wù)器IP:8080/ →點(diǎn)超連接“Tomcat Administration”→ 輸入用戶名密碼登陸→在左側(cè)的功能樹中→Tomcat Server→Service(Catalina)→Host(localhost)→Context(/要修改的web項(xiàng)目)→右側(cè)新出現(xiàn)的頁面中 →Reloadable設(shè)置為true→Save按鈕→Commit Changes.

          開發(fā)時(shí),修改。java文件后,調(diào)用這個(gè)類時(shí)日志提示:

          - Reloading this Context has started

          這是正在重新加載修改后的。class文件。

          j2ee開發(fā)插件(這里使用Myeclipse),也可能導(dǎo)致熱部署失效。因?yàn)椴寮仨氁丫幾g好的。class文件從工作空間復(fù)制到Tomcat\webapps下的項(xiàng)目里。才能使Tomcat得到需要熱部署的文件。

          最后說一下jreble,網(wǎng)上的資料比較復(fù)雜,下面介紹個(gè)最簡單的方法:

          在resin的啟動(dòng)文件,例如httpd.sh中增加:

          Resin 3.1+版本:#div_code img{border:0px;} exec $JAVA_EXE -javaagent:/opt/apps/resin/jrebel4.0-crack.jar -jar ${RESIN_HOME}/lib/resin.jar $*

          Resin 3.0-版本:#div_code img{border:0px;} args=“-J-javaagent:/opt/apps/resin/jrebel4.0-crack.jar”

          三、小結(jié)

          在進(jìn)行java web程序開發(fā)過程中,經(jīng)常遇到這種問題,修改一個(gè)java文件(*.java),需要重啟web服務(wù)器(如tomcat,weblogic等),部署項(xiàng)目。而起/停服務(wù)器浪費(fèi)了大量的時(shí)間。在小項(xiàng)目中,也許我們感覺不到。但對于公司的大型項(xiàng)目:如數(shù)據(jù)中心,生產(chǎn)等系統(tǒng)開發(fā)而言,往往起/停需要等待幾分鐘時(shí)間。更浪費(fèi)時(shí)間的是,對于一個(gè)類中的方法的調(diào)試過程,如果修改多次,需要反復(fù)的啟停服務(wù)器,那么浪費(fèi)的時(shí)間更多。從上可以看出,我們急需一個(gè)可快速起/ 停服務(wù)器的工具,來提高我們的開發(fā)效率。

        【熱部署javaweb應(yīng)用程序的方法】相關(guān)文章:

        ASP應(yīng)用程序的維護(hù)方法11-12

        Java開發(fā)Tomcat部署項(xiàng)目方法05-15

        SEO優(yōu)化關(guān)鍵詞的選擇及部署方法11-15

        關(guān)于JavaWeb三層架構(gòu)配置11-19

        javaweb之web入門基礎(chǔ)知識11-12

        J2EE分層服務(wù)器部署方法10-31

        熱菜的烹調(diào)方法10-10

        javaweb開發(fā)和j2ee區(qū)別06-04

        熱瑜伽的學(xué)習(xí)方法08-19

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>