zoukankan      html  css  js  c++  java
  • Tomcat 7 Embeded 用法

    参考实例代码:

     1 package com.scdsun.learntomcat;
     2 
     3 import java.io.File;
     4 import java.io.IOException;
     5 
     6 import javax.servlet.ServletException;
     7 
     8 import org.apache.catalina.LifecycleException;
     9 import org.apache.catalina.core.AprLifecycleListener;
    10 import org.apache.catalina.core.StandardServer;
    11 import org.apache.catalina.startup.Tomcat;
    12 
    13 public class MyServer {
    14     private static String PROJECT_PATH = System.getProperty("user.dir");
    15     private static String WEB_APP_PATH = PROJECT_PATH + File.separator
    16             + "webapps";
    17     private static String CATALINA_HOME = PROJECT_PATH;
    18 
    19     public static void main(String[] args) throws LifecycleException,
    20             IOException, ServletException {
    21         Tomcat tomcat = new Tomcat();
    22         tomcat.setPort(8080);
    23         // 将会在相应目录下生产jsp原文件及对应的class
    24         // 如这里使用应用程序的根目录:D:Workspace_EclipseLearnTomcatworkTomcatlocalhostHelloorgapachejsp
    25         // 其中D:Workspace_EclipseLearnTomcat为CATALINA_HOME
    26         // 后续的workTomcatlocalhostHelloorgapachejsp为tomcat生成的文件
    27         tomcat.setBaseDir(CATALINA_HOME);
    28         // Web应用所存放的目录,如:D:Workspace_EclipseLearnTomcatwebapps
    29         // 在这个目录下存放需要发布的Web应用
    30         tomcat.getHost().setAppBase(WEB_APP_PATH);
    31 
    32         try {
    33             StandardServer server = (StandardServer) tomcat.getServer();
    34             AprLifecycleListener listener = new AprLifecycleListener();
    35             server.addLifecycleListener(listener);
    36             
    37             // 添加一个根路径应用,如http://localhost:8080/
    38             tomcat.addWebapp("/", WEB_APP_PATH + File.separator + "ROOT");
    39             // 添加一个/Hello应用,如: http://localhost:8080/Hello/
    40             tomcat.addWebapp("/Hello", WEB_APP_PATH + File.separator + "Hello");
    41         } catch (ServletException e) {
    42             e.printStackTrace();
    43             throw e;
    44         }
    45         try {
    46             tomcat.start();
    47             tomcat.getServer().await();
    48         } catch (LifecycleException e) {
    49             e.printStackTrace();
    50             throw e;
    51         }
    52 
    53     }
    54 }

    服务启动后:

    1、由于添加了ROOT应用(tomcat.addWebapp("/", WEB_APP_PATH + File.separator + "ROOT")),可以在本地文件夹D:Workspace_EclipseLearnTomcatwebappsROOT中放置index.htm文件,直接访问地址http://localhost:8080/

    2、由于添加了Hello/应用(tomcat.addWebapp("/Hello", WEB_APP_PATH + File.separator + "Hello")),可以在本地文件夹D:Workspace_EclipseLearnTomcatwebappsHello中保存hello.jsp文件,访问http://localhost:8080/Hello/hello.jsp进行测试;Tomcat为hello.jsp自动生成的java和class文件,位于本地D:Workspace_EclipseLearnTomcatworkTomcatlocalhostHelloorgapachejsp目录中

  • 相关阅读:
    如何在OS X 10.9 Mavericks下安装Command Line Tools(命令行工具)
    NGUI系列教程六(技能冷却的CD效果)
    NGUI系列教程五(角色信息跟随)
    NGUI系列教程四(自定义Atlas,Font)
    NGUI系列教程三
    NGUI系列教程二
    NGUI系列教程一
    相机控制
    Visual Stuio 2010 常用快捷及操作
    unity3d 使用背景贴图
  • 原文地址:https://www.cnblogs.com/scdsun/p/3657658.html
Copyright © 2011-2022 走看看