Spring Boot打war包的实例教程

作者:马军伟 时间:2022-10-05 07:52:49 

Spring Boot除了可以打可执行jar包外,也支持传统的war包。本文介绍如何使用Spring Boot构建传统war包。

Spring Boot打war包步骤如下:

1、在pom.xml里定义打包类型


<packaging>war</packaging>

2、添加Spring Boot启动器(也可通过parent)


 <dependencyManagement>
<dependencies>
 <dependency>
 <!-- Import dependency management from Spring Boot -->
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-dependencies</artifactId>
 <version>1.5.6.RELEASE</version>
 <type>pom</type>
 <scope>import</scope>
 </dependency>
</dependencies>
</dependencyManagement>

3、添加spring-boot-starter-web依赖


   <dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-web</artifactId>
 <exclusions>
 <exclusion>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-tomcat</artifactId>
 </exclusion>
 </exclusions>
</dependency>

4、添加打包插件


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

5、主类继承SpringBootServletInitializer


/**
* WAR application
*/
@SpringBootApplication
public class WarApplication extends SpringBootServletInitializer {

public static void main(String[] args) {
SpringApplication.run(WarApplication.class, args);
}
}

6、执行mvn clean package打包


$mvn clean package

7、将打好的war包拷贝到容器(如tomcat)运行即可。

这里需要简单说明下:

主应用可以重写SpringBootServletInitializer里面有configure方法,自定义配置Spring Boot。


 /**
* Configure the application. Normally all you would need to do is to add sources
* (e.g. config classes) because other settings have sensible defaults. You might
* choose (for instance) to add default command line arguments, or set an active
* Spring profile.
* @param builder a builder for the application context
* @return the application builder
* @see SpringApplicationBuilder
*/
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder;
}

实例源码下载

来源:http://www.majunwei.com/view/201708110954589793.html

标签:Spring,Boot,war包
0
投稿

猜你喜欢

  • C#动态执行批处理命令的方法

    2023-03-16 23:19:40
  • Android开发实现NFC刷卡读取的两种方式

    2023-01-14 13:00:07
  • Spring Boot 实现图片上传并回显功能

    2021-10-11 17:45:20
  • Android 中通过ViewDragHelper实现ListView的Item的侧拉划出效果

    2021-08-14 18:37:46
  • 浅谈Java之终止继承:Final类和Fianl方法

    2023-02-14 00:07:08
  • Java 静态绑定与动态绑定深入分析

    2021-06-19 05:31:04
  • javaweb前端向后端传值的几种方式总结(附代码)

    2022-04-28 09:21:29
  • Android中单例模式的一些坑小结

    2021-11-02 22:33:11
  • Java 8 中 Function 接口使用方法介绍

    2022-12-08 23:54:39
  • C# DataTable中查询指定字段名称的数据

    2023-10-08 16:16:44
  • Android自定义View实现水平带数字百分比进度条

    2022-03-17 02:47:06
  • Android IntentFilter的匹配规则示例详解

    2022-07-11 19:12:29
  • C#使用JArray和JObject封装JSON对象

    2022-10-15 16:56:16
  • C#的TimeSpan案例详解

    2023-11-20 11:34:52
  • c# 使用模式匹配以及 is 和 as 运算符安全地进行强制转换

    2022-11-23 09:47:51
  • Spring Boot项目如何同时支持HTTP和HTTPS协议的实现

    2023-11-19 19:57:05
  • Android调用系统图库获取图片的方法

    2023-09-23 04:13:02
  • 在IntelliJ IDEA中为自己设计的类库生成JavaDoc的方法示例

    2023-11-25 09:49:02
  • Java中Mybatis-Plus使用方式介绍

    2021-11-14 05:49:56
  • Java 实战项目之在线点餐系统的实现流程

    2022-08-05 04:11:35
  • asp之家 软件编程 m.aspxhome.com