zoukankan      html  css  js  c++  java
  • SpringBoot简便地打成一个war包

    正常情况下SpringBoot项目是以jar包的形式,通过命令行:

    java -jar demo.jar
    

      

    来运行的,并且SpringBoot是内嵌Tomcat服务器,所以每次重新启动都是用的新的Tomcat服务器。正因如此,也出现了一个问题:
    上传到项目的文件,如果是保存在项目中的,那么重启过后文件就会丢失。比如我们上传了一个头像,重启项目后,这个头像就没了。而如果将文件保存在本地磁盘中的话,html中标签没办法获取(当然,企业项目中一般是有专门的图片服务器的)。因此,我们才需要将SpringBoot项目打成war包,放到Tomcat中去运行。

    修改方法
    在pom.xml文件中添加下面的依赖:

     <!--因配置外部TOMCAT 而配置-->
    <dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-tomcat</artifactId>
    			<scope>provided</scope>
    		</dependency>
    

      同时,将pom.xml文件首部的jar改成war

    	<groupId>com.star</groupId>
    	<artifactId>yiyong</artifactId>
    	<version>0.0.1-SNAPSHOT</version>
    	<packaging>war</packaging>
    	<!--<packaging>jar</packaging>-->
    

      最后,将启动类从

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

      修改为

    @SpringBootApplication
    public class YiyongApplication extends SpringBootServletInitializer{
    	@Override
    	protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    		return builder.sources(YiyongApplication.class);
    	}
    
    
    	public static void main(String[] args) {
    		SpringApplication.run(YiyongApplication.class, args);
    	}
    }
    

      

    注意:该类继承了SpringBootServletInitializer并且重写了configure方法,这是关键所在。

    打包部署

    在IDEA右侧Maven栏双击package等待Build Success即可。

    然后把target目录下的war包放到tomcat的webapps目录下,启动tomcat,即可自动解压部署。
    最后在浏览器中输入

    http://localhost:[端口号]/[打包项目名]/
    

      发布成功

  • 相关阅读:
    Windows下安装MongoDB
    介绍了MongoDB在32位Windows7下的安装以及一些简单应用
    简单的实例来理解WCF 数据服务
    对缓存的思考——提高命中率
    如何在安装过程中部署DevExpress控件
    [WCF REST] 解决资源并发修改的一个有效的手段:条件更新(Conditional Update)
    MEF实现IoC
    Lucene索引分析工具Luke.Net 0.5升级版 (兼容Lucene.Net 2.9.4.1)
    Mongodb在windows下面作为服务启动 出现“服务没有响应控制功能”
    写自己的ASP.NET MVC框架
  • 原文地址:https://www.cnblogs.com/jtlgb/p/11970610.html
Copyright © 2011-2022 走看看