<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Jarod@termainal$ tail * >> blog

    A Developer's Notebook

      BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
      24 Posts :: 9 Stories :: 12 Comments :: 0 Trackbacks
    測(cè)試環(huán)境:
    tomcat-6.0.14
    ubuntu gusty
    sun-jdk-1.6

    多個(gè)人合作的項(xiàng)目里只要修改tomcat-conf.properties文件后即可使用。我這里用了slf4j做LOG,不用LOG的把相關(guān)類(lèi)去掉即可。還有我是把tomcat/lib下的jar都加進(jìn)classpath的。

    目錄結(jié)構(gòu)
    /-|projectHome
      |
      |--src
      |   |--TomcatServer.java
      |   |--tomcat-conf.properties
      |
      |--webapp
      |   |--WEB-INF
      |   |   |-web.xml

    TomcatServer.java:
     1 import java.io.File;
     2 import java.io.IOException;
     3 import java.util.Properties;
     4 
     5 import org.apache.catalina.Context;
     6 import org.apache.catalina.Engine;
     7 import org.apache.catalina.Host;
     8 import org.apache.catalina.LifecycleException;
     9 import org.apache.catalina.startup.Embedded;
    10 import org.slf4j.Logger;
    11 import org.slf4j.LoggerFactory;
    12 
    13 /**
    14  * http://m.tkk7.com/jarod
    15  * @author jarod
    16  */
    17 public class TomcatServer {
    18 
    19     private static final Logger logger = LoggerFactory
    20             .getLogger(TomcatServer.class);
    21 
    22     public static void main(String[] args) {
    23         try {
    24             new TomcatServer();
    25         } catch (Throwable t) {
    26             logger.error("", t);
    27         }
    28     }
    29 
    30     private Embedded tomcat;
    31 
    32     // tomcat主目錄
    33     private String catalinaHome;
    34 
    35     private String projectHome;
    36 
    37     public TomcatServer() {
    38         initConf();
    39 
    40         tomcat = new Embedded();
    41         tomcat.setCatalinaHome(catalinaHome);
    42         Engine engine = tomcat.createEngine();
    43         Host host = tomcat.createHost("localhost", projectHome);
    44         host.addChild(tomcat.createContext(""""));
    45         Context context = tomcat.createContext("/webapp1""webapp");
    46         // 當(dāng)以debug模式啟動(dòng)時(shí),修改可立即生效
    47         context.setReloadable(true);
    48         host.addChild(context);
    49         engine.addChild(host);
    50         engine.setDefaultHost("localhost");
    51         tomcat.addEngine(engine);
    52         tomcat.addConnector(tomcat.createConnector("0"8081false));
    53         registerShutdownHook();
    54         try {
    55             tomcat.start();
                    
    Thread.sleep(Long.MAX_VALUE);
    56         } catch (Exception e) {
    57             throw new RuntimeException(e);
    58         }
    59     }
    60 
    61     private void initConf() {
    62         Properties properties = new Properties();
    63         try {
    64             properties.load(TomcatServer.class
    65                     .getResourceAsStream("/tomcat-conf.properties"));
    66             catalinaHome = properties.getProperty("catalina.home");
    67 
    68             File f = new File(".");
    69             projectHome = f.getAbsolutePath();
    70         } catch (IOException e) {
    71             throw new RuntimeException(e);
    72         }
    73     }
    74 
    75     private void registerShutdownHook() {
    76         Runtime.getRuntime().addShutdownHook(new Thread() {
    77             @Override
    78             public void run() {
    79                 try {
    80                     tomcat.stop();
    81                 } catch (LifecycleException e) {
    82                     throw new RuntimeException(e);
    83                 }
    84             }
    85         });
    86     }
    87 }


    tomcat-conf.properties:
    catalina.home=/home/jarod/server/tomcat/apache-tomcat-6.0.14


    為什么要setCatalinaHome?
    設(shè)了該值,tomcat啟動(dòng)時(shí)會(huì)在該目錄加載默認(rèn)的一些配置,如MIME mapping等,如果要自己手動(dòng)添加配置太麻煩了,而如果不要這些配置,這個(gè)embedded tomcat用處也不大
    posted on 2007-12-20 14:49 Jarod 閱讀(2179) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Java
    主站蜘蛛池模板: 亚洲人xxx日本人18| 免费观看激色视频网站(性色)| 亚洲成AV人综合在线观看| 国产又大又粗又硬又长免费| 久草视频在线免费| 国产成人AV免费观看| 亚洲中文字幕久久精品无码A | 亚洲国产精品成人AV无码久久综合影院| 久热免费在线视频| 一级毛片在播放免费| 亚洲AV永久无码精品放毛片| 亚洲成人黄色在线观看| 久久久影院亚洲精品| 亚洲综合另类小说色区色噜噜| 永久在线毛片免费观看| 在线天堂免费观看.WWW| 6080午夜一级毛片免费看| 性无码免费一区二区三区在线| 中文在线免费视频| 九九九精品视频免费| 色偷偷亚洲第一综合网| 亚洲成a人无码亚洲成av无码 | 久久久久久精品免费看SSS| a级毛片在线免费观看| 狠狠入ady亚洲精品| 亚洲欧美aⅴ在线资源| 国产成人精品日本亚洲11| 亚洲ts人妖网站| 亚洲明星合成图综合区在线| 亚洲av不卡一区二区三区| 亚洲国产精品乱码一区二区| 亚洲精品无码永久中文字幕| 久久久久亚洲AV成人网| 亚洲一级特黄无码片| 亚洲一区二区三区在线播放| 亚洲人午夜射精精品日韩| 国产精品亚洲玖玖玖在线观看| 久久亚洲中文字幕精品一区四 | 国产精品黄页免费高清在线观看| 国产亚洲Av综合人人澡精品| 中文无码亚洲精品字幕|