spring boot项目在eclipse中的web的启动方式

说明
最近开始写spring boot框架, 而spring boot自带Servlet容器, 发现除了使用 java方式运行Application.java的方式运行项目,使用像平常的web项目的启动方式,部署到了spring boot的内置servlet容器中,若要把spring-boot项目按照平常的web项目一样发布到tomcat下的方式在eclipse中启动,需要加以下配置。

具体步骤

(1). 修改pom.xml将打包方式改成war

      <packaging>war</packaging>

(2). Tomcat的版本支持

    <!-- 打war包时加入此项, 告诉spring-boot tomcat相关jar包用外部的,不要打进去 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>

加上这个后,不用spring-boot内置的tomcat库

(3). 修改启动类,并重写初始化方法

  我们需要类似于web.xml的配置方式来启动spring上下文了,在Application类的同级添加一个SpringBootStartApplication类,其代码如下:
/**
 * 修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法
 */
public class SpringBootStartApplication extends SpringBootServletInitializer {

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

(4). 这样就可以把spring-boot项目按照平常的web项目一样发布到tomcat下的方式在eclipse中启动(建议发布到root下)

注:进入项目根目录下(即包含pom.xml的目录),打开命令行,在命令行里输入:
mvn clean package即可, 等待打包完成,出现[INFO] BUILD SUCCESS即为打包成功。
然后把target目录下的war包放到tomcat的webapps目录下,启动tomcat,即可自动解压部署。
最后在浏览器中输入

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

(5).效果图:
(5.1). Tomcat启动日志1
tomcat启动日志1
(5.2). Tomcat启动日志2
tomcat启动日志2
(5.3). 访问效果
在这里插入图片描述

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