<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://www.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
    主站蜘蛛池模板: 亚洲成熟丰满熟妇高潮XXXXX| 亚洲综合成人网在线观看| 亚洲av永久无码精品三区在线4| 免费国产黄网站在线观看视频| 亚洲人成人77777网站| 中文字幕免费在线看线人动作大片| 国产zzjjzzjj视频全免费 | 精品国产污污免费网站入口| 亚洲日韩中文在线精品第一| 国产成人高清精品免费观看| 亚洲五月综合缴情在线观看| 国产一精品一AV一免费| 久久亚洲精品国产精品| 免费一本色道久久一区| 国产亚洲精品AAAA片APP| 免费人成在线观看播放国产| 国产精品免费观看视频| 亚洲va久久久噜噜噜久久 | 国内精品久久久久影院免费| 亚洲av伊人久久综合密臀性色| 在线观看H网址免费入口| 亚洲色大网站WWW永久网站| 免费国产成人高清视频网站| 亚欧国产一级在线免费| 亚洲AV无码一区二区乱子伦| 欧洲乱码伦视频免费| 美女视频黄频a免费观看| 亚洲日韩国产精品第一页一区| 69视频免费观看l| 国产精品无码亚洲精品2021| 亚洲综合另类小说色区| 91成年人免费视频| 色婷婷综合缴情综免费观看| 亚洲激情在线观看| 午夜爱爱免费视频| 国产免费一区二区三区不卡| 亚洲一区电影在线观看| 2048亚洲精品国产| 国产精品视频永久免费播放| 一个人看的免费高清视频日本| 亚洲精品中文字幕乱码|