package com.starsoft.tomcat;
import java.net.InetAddress;
import org.apache.catalina.Context;
import org.apache.catalina.Engine;
import org.apache.catalina.Host;
import org.apache.catalina.connector.Connector;
import org.apache.catalina.startup.Embedded;
public class EmbeddedTomcat {
/**
* 嵌入式Tomcat
*
* @author QQ:393568883
*/
private Embedded tomcat; // 嵌入式Tomcat
public void startup() throws Exception {
String webrootPath = "F://workspace//starsoft//WebContent"; // WEB应用程序路径
String contextPath = "/starsoft"; // WEB上下文名称
String xmlPath = "F://workspace//starsoft//WebContent//WEB-INF//web.xml"; // web.xml路径
tomcat = new Embedded();
Engine engine = tomcat.createEngine();
tomcat.setCatalinaHome(webrootPath);
Host host = tomcat.createHost("localhost", webrootPath);
Context context = tomcat.createContext(contextPath, webrootPath);
context.setAltDDName(xmlPath);
context.setReloadable(true);
host.addChild(context);
engine.addChild(host);
engine.setDefaultHost(host.getName());
engine.setName("EmbedTomcatServer");
tomcat.addEngine(engine);
Connector connector = tomcat.createConnector(InetAddress
.getByName("192.168.1.8"), 8080, false);
connector.setURIEncoding("GBK");
tomcat.addConnector(connector);
tomcat.start();
}
public void shutdown() throws Exception {
tomcat.stop();
}
public static void main(String[] args) {
try {
new EmbeddedTomcat().startup();
} catch (Exception e) {
e.printStackTrace();
}
}
}