下面为嵌入使用Tomcat的示例代码:
import java.net.URL; import org.apache.catalina.Context; import org.apache.catalina.core.AprLifecycleListener; import org.apache.catalina.core.StandardServer; import org.apache.catalina.deploy.FilterDef; import org.apache.catalina.deploy.FilterMap; import org.apache.catalina.startup.Tomcat; import org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter; import com.beust.jcommander.JCommander; import com.google.inject.Guice; import com.google.inject.Inject; import com.google.inject.Injector; import com.google.inject.servlet.GuiceFilter; public class WebServer { private final FrontendSettings webServerSettings; private final GuiceListener guiceListener; private final Tomcat tomcat; @Inject public WebServer( FrontendSettings webServerSettings, GuiceListener guiceListener) { this.webServerSettings = webServerSettings; this.guiceListener = guiceListener; this.tomcat = new Tomcat(); } private FilterDef createFilterDef(String filterName, String filterClass) { FilterDef filterDef = new FilterDef(); filterDef.setFilterName(filterName); filterDef.setFilterClass(filterClass); return filterDef; } private FilterMap createFilterMap(String filterName, String urlPattern) { FilterMap filterMap = new FilterMap(); filterMap.setFilterName(filterName); filterMap.addURLPattern(urlPattern); return filterMap; } public void run() throws Exception { String appBase = "."; tomcat.setPort(webServerSettings.getPort()); tomcat.setBaseDir("webapp"); tomcat.getHost().setAppBase(appBase); String contextPath = "/"; // Add AprLifecycleListener to give native speed boost // sudo apt-get install libtcnative-1 StandardServer server = (StandardServer)tomcat.getServer(); AprLifecycleListener listener = new AprLifecycleListener(); server.addLifecycleListener(listener); Context context = tomcat.addWebapp(contextPath, appBase); context.addFilterDef(createFilterDef("guice", GuiceFilter.class.getName())); FilterDef struts2FilterDef = createFilterDef("struts2", StrutsPrepareAndExecuteFilter.class.getName()); struts2FilterDef.addInitParameter("struts.devMode", Boolean.toString(webServerSettings.isDevModeEnabled())); context.addFilterDef(struts2FilterDef); context.addFilterMap(createFilterMap("guice", "/*")); context.addFilterMap(createFilterMap("struts2", "/*")); tomcat.start(); tomcat.getServer().await(); } public static void main(String[] args) throws Exception { FrontendSettings webServerSettings = new FrontendSettings(); new JCommander(webServerSettings, args); Guice.createInjector(new FrontendModule(webServerSettings)); Injector injector = Guice.createInjector(); WebServer server = injector.getInstance(WebServer.class); server.run(); } }
相关推荐
基于网络上嵌入式Tomcat资源较少,而我也正好有此资源,因此就共享该嵌入式Tomcat资源,以供大家学习和交流。
java嵌入式tomcat[借鉴].pdf
嵌入式tomcat,把tomcat嵌入到java代码中,方便程序员开发WEB项目
手写嵌入式Tomcat,基于tomcat提供的api,实现嵌入式。
嵌入式Tomcat5.5 快速进行J2EE-WEB开发,简单配置,支持热交换,编译类无需重启Tomcat,开发专用.
嵌入式tomcat,带例子,简单易懂啊。
能够建立虚拟目录服务的应用程序源代码,不需手动安装tomcat,配置虚拟目录,只需要安装jvm,运行应用程序,就能建立一个虚拟目录
这是本人发表在CSDN上的文章资源,欢迎下载,具体可以浏览此页面http://blog.csdn.net/youqishini/article/details/6969769,本工程项目里有所需要的jar文件。配置文件等!
嵌入式tomcat完整示例 博文链接:https://jiasudu.iteye.com/blog/160564
03-嵌入式Tomcat1
嵌入式tomcat依赖jar包8.5.29版本(其中包括tomcat-juli-8.5.29、tomcat-jdbc-8.5.29、tomcat-embed-websocket-8.5.29、tomcat-embed-el-8.5.29、tomcat-embed-core-8.5.29、tomcat-annotations-api-8.5.29)
模块化Java,嵌入式Tomcat,Fat Jar,Vue JS 该应用程序演示了面向服务的RESTfull应用程序的各个部分。 演示(Heroku托管) 大约需要2-3分钟才能启动实例 技术栈 零件 技术 后端郎 Java 11(带有模块) 宁静的...
用java程序做的一个嵌入式tomcat,可供大家参考、补充。
NULL 博文链接:https://xuxiannian.iteye.com/blog/845839
基于Maven原型并添加嵌入式Tomcat的最小示例。 最初的来源是Maven原型: 另外,嵌入式Tomcat 7代码来自: 这里真的没有什么新东西,主要是混音,然后是一个琐碎的服务,它确实在等待……计算。 为此,您需要...
Spring Boot 2.x嵌入式tomcat JNDI数据源(开发配置文件)+ WAR 该代码旨在通过JNDI数据源查找保持数据库访问。 在开发中,使用配置了JNDI数据源的嵌入式tomcat运行在部署为WAR时,它将在服务器上查找真实的JDNI...
嵌入式Tomcat运行Tomcat mvn clean package 然后sh output/bin/run浏览至: http://localhost:8080/hi/hello
这是官网下载的嵌入式tomcat,最高版本就是5.5.34的,里面有完整的jar文件及那3个配置文件。想知道怎么用欢迎光临我的CSDN博客http://blog.csdn.net/youqishini?viewmode=contents 里面有讲解!