`

spring boot WEB在外部tomcat上运行(七)

 
阅读更多

1、创建好一个基于SpringBoot的war项目

2、pom.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.example</groupId>
	<artifactId>demo</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>war</packaging>

	<name>demo</name>
	<description>Demo project for Spring Boot</description>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.14.BUILD-SNAPSHOT</version>
		<relativePath /> <!-- lookup parent from repository -->
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-legacy</artifactId>
			<version>1.1.0.RELEASE</version>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

	<repositories>
		<repository>
			<id>spring-snapshots</id>
			<name>Spring Snapshots</name>
			<url>https://repo.spring.io/snapshot</url>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</repository>
		<repository>
			<id>spring-milestones</id>
			<name>Spring Milestones</name>
			<url>https://repo.spring.io/milestone</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>
	</repositories>

	<pluginRepositories>
		<pluginRepository>
			<id>spring-snapshots</id>
			<name>Spring Snapshots</name>
			<url>https://repo.spring.io/snapshot</url>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</pluginRepository>
		<pluginRepository>
			<id>spring-milestones</id>
			<name>Spring Milestones</name>
			<url>https://repo.spring.io/milestone</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</pluginRepository>
	</pluginRepositories>


</project>

 3、必须编写一个SpringBootServletInitializer的子类,并调用configure方法

public class ServletInitializer extends SpringBootServletInitializer {

   @Override
   protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
       //传入SpringBoot应用的主程序
      return application.sources(SpringBoot04WebJspApplication.class);
   }

}

 4.web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
	<welcome-file-list>
		<welcome-file>hello.jsp</welcome-file>
	</welcome-file-list>
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<!-- SpringBootApplication启动类 -->
		<param-value>com.zzstxx.springboot.Springboot07WebWarApplication</param-value>
	</context-param>

	<listener>
		<listener-class>org.springframework.boot.legacy.context.web.SpringBootContextLoaderListener</listener-class>
	</listener>

	<servlet>
		<servlet-name>appServlet</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextAttribute</param-name>
			<param-value>org.springframework.web.context.WebApplicationContext.ROOT</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>

	<servlet-mapping>
		<servlet-name>appServlet</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>

</web-app>

 引用:https://blog.csdn.net/gege87417376/article/details/79204183

分享到:
评论

相关推荐

    Spring Boot整合MyBatis加外部Tomcat启动-demo.zip

    本教程将详细介绍如何在Spring Boot项目中整合MyBatis,并使用外部Tomcat服务器进行部署,帮助开发者提高工作效率。 首先,我们需要创建一个Spring Boot项目,引入MyBatis和Spring Boot对MyBatis的支持。在`pom.xml...

    IDEA创建SpringBoot的Web项目,并使用外部Tomcat(教学视频+源代码)

    IDEA创建SpringBoot的Web项目,并使用外部Tomcat(教学视频+源代码) 一、创建工程 1.首先新建一个springboot的war工程,并且将外部的Tomcat整合进我们的idea中,我们使用自己Tomcat,不再使用springboot嵌入式的 一...

    spring boot项目打包成war在tomcat运行的全步骤

    添加Servlet API的依赖,使得项目可以在外部Tomcat服务器上运行。可以选择以下任一方式: - 添加`javax.servlet`的依赖: ```xml &lt;groupId&gt;javax.servlet &lt;artifactId&gt;javax.servlet-api &lt;version&gt;3.1.0 ...

    Spring-boot web项目实例

    2. **嵌入式Servlet容器**:Spring Boot支持内嵌Tomcat、Jetty或Undertow等Servlet容器,这样我们可以直接运行jar包启动应用,无需额外部署到外部服务器。 3. **自动配置(Auto Configuration)**:Spring Boot根据...

    spring-boot-my-tomcat

    在IT行业中,Spring Boot是一个...然而,在某些场景下,如生产环境或者需要与现有Tomcat服务器集成时,使用外部Tomcat服务器启动Spring Boot应用是必要的。了解这个过程有助于你更灵活地管理和部署Spring Boot应用。

    Spring Boot讲义.pdf

    - **整合SpringMVC**:使用`spring-boot-starter-web`作为起步依赖,自动配置了SpringMVC和嵌入式的Tomcat。 - **整合连接池**:通过添加如`HikariCP`的依赖,Spring Boot可以自动配置数据源和连接池。 - **整合...

    Spring Boot in Action 英文版

    此外,Spring Boot还允许开发者在运行时覆盖应用的配置属性,这种设计允许开发者在不同的环境(如开发环境和生产环境)中部署相同的应用,而无需修改应用代码。 Spring Boot的初始化可以使用Spring Initializr进行...

    Spring Boot揭秘 PDF

    2. 嵌入式服务器:Spring Boot允许在应用中直接包含Web服务器(如Tomcat或Jetty),无需单独部署到外部服务器。这极大简化了开发和测试流程。 3. 精简的起步依赖:Spring Boot提供了一系列的“起步依赖”(Starter ...

    spring-boot 所有jar包

    在描述中提到的“springBoot 所有依赖的jar包”,是指Spring Boot项目中所需的全部外部库文件,这些jar包涵盖了Spring Boot框架本身、其依赖的Spring模块和其他第三方库。 Spring Boot 的核心特性包括: 1. **起步...

    spring-boot-中文参考手册

    Spring Boot支持内嵌Tomcat、Jetty或Undertow web服务器,无需额外进行打包和部署,使得应用可以直接以jar形式运行。 ### 四、健康检查与Actuator Actuator是Spring Boot提供的一个模块,用于提供应用的健康检查、...

    Spring Boot Tutorial 《Spring Boot 教程》

    2. **嵌入式Web服务器**:Spring Boot支持内嵌Tomcat或Jetty,无需额外部署到外部容器,简化了开发和测试流程。 3. **自动配置(Auto-configuration)**:Spring Boot通过条件注解来自动配置应用,比如`@...

    spring-boot 1.2.4.release

    2. **内嵌式Web服务器**:Spring Boot支持内嵌Tomcat、Jetty或Undertow等Web服务器,这使得你可以直接运行一个jar文件启动应用,无需额外部署到外部服务器。 3. **起步依赖(Starter POMs)**:Spring Boot提供了多...

    Spring Boot高级.rar

    3. **内嵌式Web服务器**:Spring Boot可以内嵌Tomcat或Jetty等Web服务器,这使得我们可以直接运行一个jar包来启动Web应用,而无需单独部署到外部服务器。 4. **Actuator**:这是一个用于监控和管理应用的模块,提供...

    spring-boot深入浅出

    2. **内嵌服务器(Embedded Servers)**:Spring Boot支持内嵌Tomcat、Jetty或Undertow服务器,这样可以直接运行打包后的jar文件,而无需额外部署到外部容器,大大提高了开发效率。 3. **自动配置(Auto ...

    spring boot 简单案例下载

    2. **嵌入式服务器**:Spring Boot 支持嵌入式 Tomcat、Jetty 或 Undertow 服务器,这意味着你无需单独部署到外部应用服务器,可以直接运行打包后的 JAR 文件。 3. **自动配置(Auto Configuration)**:Spring ...

    Learning Spring Boot 英文版

    Spring Boot的设计哲学是,它提供了一个独立的、生产级别的Spring基础平台,开发者们可以在此基础上快速启动和运行他们的项目。 Spring Boot的主要特点包括: 1. 创建独立的Spring应用程序:开发者可以创建一个...

    spring boot 小例子

    在这个"spring boot小例子"中,我们看到项目被构建为一个 WAR 包,这表明它是为在外部应用服务器(如 Apache Tomcat)上运行而设计的。通常,Spring Boot 提供两种打包方式:jar 和 war。jar 包适合独立运行,内嵌了...

    spring boot 例子代码

    Spring Boot 的核心特性包括自动配置、内嵌式 web 服务器(如 Tomcat 或 Jetty)以及起步依赖(starters),这些都极大地简化了项目的构建和运行。 首先,自动配置是 Spring Boot 的一大亮点。当我们在项目中引入...

    Spring Boot 实战 译者 丁雪丰

    其次,内嵌式Web服务器如Tomcat或Jetty,使得Spring Boot应用可以直接作为可执行的jar运行,无需额外部署到外部服务器。这极大地提高了开发和部署的效率。 健康检查和Actuator是Spring Boot用于微服务监控的重要...

Global site tag (gtag.js) - Google Analytics