package com.iman.nrms.common;
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;
import java.io.File;
import java.net.InetAddress;
/**
* 嵌入式TOMCAT
*/
public class EmbeddedTomcat {
private String webrootPath = new File("WebRoot").getAbsolutePath(); // WEB应用程序路径
private String contextPath = "/nrmps_1_5"; // WEB上下文名称
private int tomcatPort = 80;//TOMCAT端口
private boolean reloadable = true; // 是否允许热交换class
private Embedded tomcat; // 嵌入式TOMCAT
public EmbeddedTomcat() {
if (System.getProperty("webroot.path") != null) {
webrootPath = System.getProperty("webroot.path");
}
if (System.getProperty("context.path") != null) {
contextPath = System.getProperty("context.path");
}
if (System.getProperty("reloadable") != null) {
reloadable = Boolean.valueOf(System.getProperty("reloadable"));
}
if (System.getProperty("tomcat.control.port") != null) {
tomcatPort = Integer.parseInt(System.getProperty("tomcat.control.port"));
}
}
/**
* 启动TOMCAT
*/
public void startup() throws Exception {
System.out.println("================ the tomcat is starting, please waiting .......");
tomcat = new Embedded();
Engine engine = tomcat.createEngine();
tomcat.setCatalinaHome(webrootPath);
Host host = tomcat.createHost("localhost", webrootPath);
Context context = tomcat.createContext(contextPath, webrootPath);
if (reloadable)
context.setReloadable(true);
host.addChild(context);
engine.addChild(host);
engine.setDefaultHost(host.getName());
engine.setName("EmbeddedServer");
tomcat.addEngine(engine);
Connector connector = tomcat.createConnector(InetAddress.getByName("0.0.0.0"), tomcatPort, false);
connector.setURIEncoding("GBK");
tomcat.addConnector(connector);
tomcat.start();
}
/**
* 终止TOMCAT
*/
public void shutdown() throws Exception {
tomcat.stop();
}
public static void main(String[] args) {
try {
new EmbeddedTomcat().startup();
System.out.println("================ the tomcat has started .......");
} catch (Exception e) {
System.out.println("================ the tomcat is failed to start .......");
e.printStackTrace();
}
}
}
2012年7月04日 13:53
相关推荐
7. **配置Web应用**: 使用内嵌Tomcat时,我们需要将应用的类路径和静态资源设置到Tomcat的上下文中。这可以通过创建`Context`对象并调用其`setBaseDir()`或`setDocBase()`方法完成。 8. **启动和停止服务器**: 通过...
内嵌式Tomcat是开发Java Web应用时常用的一种方式,它允许我们将Tomcat服务器与应用程序打包在一起,无需单独部署到外部服务器。这种方式尤其适合于快速开发、测试和演示,因为它简化了部署流程,并且便于自动化构建...
Java内嵌式Tomcat,全称为Apache Tomcat,是一款开源且免费的应用服务器,主要用于部署和运行Java Servlet和JavaServer Pages(JSP)等Web应用程序。它由Apache软件基金会开发,是Java EE生态中的一个关键组件。在...
为什么使用内嵌Tomcat开发?...基于内嵌apache-tomcat-8.0.24的应用开发解决了网上提供省了el-ri相关jar 包的问题,此项目可以直接部署到myeclispe中直接运行EmbededTomcat类就可以执行内嵌tomcat运行web程序
默认情况下,SpringBoot会自带一个内嵌的Tomcat服务器,允许你直接运行`java -jar`命令启动应用。然而,有时候我们需要将应用部署到独立的、集群环境中的Tomcat服务器上,以便更好地进行资源管理和扩展。 1. **创建...
Spring Boot启动过程(四)之Spring Boot内嵌Tomcat启动 本文主要介绍了Spring Boot启动过程(四)之Spring Boot内嵌Tomcat启动的相关知识点,用于帮助开发者更好地理解Spring Boot的启动过程。 一、...
【描述】"java使用内嵌Tomcat开发javaWeb项目源代码"表明这个项目使用Java语言,通过内嵌Tomcat容器来运行和测试Java Web应用程序。内嵌Tomcat意味着Tomcat服务器是作为项目的一部分直接集成的,而不是作为一个独立...
在JavaEE开发中,使用内嵌的Tomcat服务器(通常称为embeded Tomcat)是一种常见的实践,它允许开发者在本地环境中快速、方便地测试和调试应用程序,而无需手动配置独立的服务器实例。本文将深入探讨如何使用embeded ...
【标题】:“Tomcat7内嵌服务器” 在Java Web开发中,Tomcat是一个广泛应用的开源Web...要深入理解这些知识点,实践是必不可少的,可以尝试在自己的项目中集成和使用内嵌Tomcat7服务器,以此提升开发效率和应用性能。
SpringMVC是一款强大的Java web开发框架,用于构建高效、可维护的Web...通过实践这些内容,你不仅可以理解Spring MVC的架构,还能熟练运用IOC和AOP解决实际问题,同时掌握如何在应用中内嵌Tomcat服务器,提升开发效率。
SpringBoot项目和Tomcat部署是Java开发者经常遇到的技术点,尤其在构建Web应用程序时。SpringBoot以其简洁的配置和快速的开发效率深受喜爱,而Tomcat作为常用的Java应用服务器,常被用来运行SpringBoot应用。这里...
3. **启动脚本**:用于启动内嵌Tomcat的Java Main类或者脚本。 4. **依赖库**:JFinal和Tomcat的jar文件,以及其他可能的第三方库。 5. **测试资源**:例如HTML、CSS、JavaScript等前端资源,以及用于测试的...
- **减少部署复杂性**:应用程序可以独立部署,无需额外设置外部Web服务器。 - **提高性能**:由于减少了中间层,应用程序的响应时间可能得到改善。 - **易于测试和调试**:在开发过程中,嵌入式Tomcat可以作为一个...
默认情况下,SpringBoot的内嵌Tomcat监听8080端口,但这个端口可以通过配置文件(application.properties或application.yml)进行更改。 Tomcat 9.0.44的jar包包含了服务器运行所需的所有组件,如servlet容器、JSP...
《Spring Boot整合MyBatis...同时,我们还探讨了如何将Spring Boot应用部署到外部Tomcat服务器,涉及禁用内嵌Tomcat、修改打包类型等操作。通过这些实践,开发者可以更高效地管理和复用自己的项目配置,提升开发效率。
在Java Web开发中,Tomcat是一个非常流行的开源应用服务器,它用于部署和运行Servlet和JSP应用程序。Servlet是Java提供的一种用于扩展服务器功能的接口,它使得开发者可以在服务器端编写动态网页。本资源包主要围绕...
通过以上步骤,我们可以顺利地完成 Pinpoint 的安装部署,并开始监控 Tomcat、Weblogic 和 WebSphere 等 Java 应用服务器。Pinpoint 的强大之处在于其丰富的功能集和较低的性能开销,使得开发者能够在不影响应用性能...
1. **简化部署**:无需在目标机器上安装完整的Tomcat服务器,只需部署包含嵌入式Tomcat的应用即可。 2. **灵活控制**:开发者可以精确地控制服务器的启动参数,例如端口号、线程池大小等。 3. **快速测试**:在开发...
5. 容器内嵌:更容易将Tomcat内嵌到其他应用中,如Spring Boot。 6. 性能提升:通过优化内存管理和垃圾回收,进一步提升了性能。 **对比与选择** Tomcat6适用于那些只需要Servlet 2.5和JSP 2.1规范支持的项目,或者...