使用方法:
1.在工程所在目錄下建立個單獨的目錄比如Embedded,然後在目錄下分別建立conf和lib兩個子目錄。
2.把從官網下載的apache-tomcat-7.0.23-embed.rar中的jar解壓到lib子目錄(如果不用log4j的話,tomcat-embed-logging-log4j.jar可以不要)。
3.把第2步解壓的jar添加到工程的build path中。
4.在conf子目錄下新建一個context.xml文件,內容如下:
<?xml version='1.0' encoding='utf-8'?>
<Context>
<Resource name="baseDataSource" auth="Container"
type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@10.11.10.111:1521:testDB"
username="test" password="test" maxActive="15" maxIdle="10" initialSize="2"
testWhileIdle="true" validationQuery="select 1 from dual" testOnBorrow="true"/>
</Context>
5.在工程中,新建啓動文件,代碼如下:
public class EmbeddedTomcat {
private static Tomcat tomcat = null;
private static String CONTEXT_PATH = "/myProject";
private static String PROJECT_PATH = System.getProperty("user.dir");
private static String WEB_APP_PATH = PROJECT_PATH + "/myProject";
private static String TOMCAT_HOME = PROJECT_PATH + "/Embedded/Tomcat";
private static String ENCODING = "UTF-8";
private static int TOMCAT_PORT = 8080;
// 啓動嵌入式Tomcat服務器
public static void startTomcat() throws Exception {
try {
long startTime = System.currentTimeMillis();
tomcat = new Tomcat();
// 設置Tomcat的工作目錄:工程根目錄/Embedded/Tomcat
tomcat.setBaseDir(TOMCAT_HOME);
tomcat.setPort(TOMCAT_PORT);
tomcat.addWebapp(CONTEXT_PATH, WEB_APP_PATH);
tomcat.enableNaming();//執行這句才能支持JDNI查找
tomcat.getConnector().setURIEncoding(ENCODING);
tomcat.start();
System.err.println("Tomcat started in " + (System.currentTimeMillis() - startTime) + " ms.");
tomcat.getServer().await();//讓服務器一直跑
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
try {
EmbeddedTomcat.startTomcat();
} catch (Exception e) {
e.printStackTrace();
}
}
}
6.在eclipse中,右鍵-》Debug As(Run As)-》Java Application,就可以啓動服務器了。點擊console視圖的停止按鈕可停掉服務器。