springboot打war包

 1. pom 中改動

 1.1. jar改爲war

 <packaging>war</packaging>


 1.2.starter-web排除內置tomcat


增加exclusions標籤

       <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>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

1.3. 編譯所需包 

編譯時候需要依賴一些servlet包,所以我們可以引用servlet包,也可以用tomcat包,只要是comple級別就可以
     

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>compile</scope>
        </dependency>


2.java部分改動


開啓servletinitialer的啓動方式,擴展springbootservletinitializer實現configure方法
先看下啓動類:
 

package com.tdt.audit;

import com.github.xiaoymin.swaggerbootstrapui.annotations.EnableSwaggerBootstrapUI;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.ImportResource;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@SpringBootApplication
@EnableSwagger2
@EnableSwaggerBootstrapUI
@ImportResource({"classpath:/spring-ehcache.xml"})
public class VgiAuditApplication {
    public static void main(String[] args) {
        ConfigurableApplicationContext context = SpringApplication.run(VgiAuditApplication.class, args);
//        ApplicationContextProviderHelper.setApplicationContext(context);
    }

}


 

方式一. 可以是直接在啓動類上實現

 

package com.tdt.audit;

import com.github.xiaoymin.swaggerbootstrapui.annotations.EnableSwaggerBootstrapUI;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.ImportResource;
import springfox.documentation.swagger2.annotations.EnableSwagger2;


@SpringBootApplication
@EnableSwagger2
@EnableSwaggerBootstrapUI
@ImportResource({"classpath:/spring-ehcache.xml"})
public class VgiAuditApplication extends SpringBootServletInitializer {
    public static void main(String[] args) {
        ConfigurableApplicationContext context = SpringApplication.run(VgiAuditApplication.class, args);
//        ApplicationContextProviderHelper.setApplicationContext(context);
    }

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(VgiAuditApplication.class);
    }
}


 

 方式二,可以新建一個類實現

 

新建類ServletInitializer

 

package com.tdt.audit;

import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.context.annotation.Configuration;

@Configuration
public class ServletInitializer extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(VgiAuditApplication.class);
    }

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章