SpringBoot打成war包,部署Tomcat服务器

1: 创建spring boot项目

使用 Spring initializr  可以直接选择创建包的方式

也可以选择在Pom中更改

    <groupId>com.dgw</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>demo</name>
    <description>Demo project for Spring Boot</description>

2: 创建初始化类

使用 Spring initializr  自动已经为我们创建完成了, 当然可以选择手动创建下面的初始化器 继承 SpringBootServletInitializer

public class ServletInitializer extends SpringBootServletInitializer {

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

}

2.1配置视图解析器访问路径

在application.properties 或者 yaml 下配置

spring.mvc.view.prefix=/WEB-INF/
spring.mvc.view.suffix=.jsp

3: 创建webapp目录

Spring Boot 在 Project Structure 中创建

 Web Resource 创建  这个路径

\src\main\webapp

Deployment Descriptors 创建web.xml

# 路径

\src\main\webapp\WEB-INF\web.xml

web.xml配置信息

<?xml version="1.0" encoding="UTF-8"?>
<web-app 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_3_0.xsd"
           version="3.0">

</web-app>

正常创建的目录结构

4: 配置测试

创建控制器

@RestController
public class FisrtController {

    @GetMapping("/sayhi")
    public ModelAndView sayHi(){
        ModelAndView andView = new ModelAndView();
        andView.setViewName("success");
        andView.addObject("msg","HELLO");
        return andView;
    }
}

webapp 路径 创建index.jsp文件

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
        <a href="sayhi">send msg</a>
</body>
</html>

webapp\WEB-INF 下创建success.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <h2>${msg}</h2>
</body>
</html>

结果:

附录 POM:

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.2.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.dgw</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>demo</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <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>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

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

</project>

原文地址:https://www.cnblogs.com/dgwblog/p/12003177.html

时间: 2024-10-28 19:11:00

SpringBoot打成war包,部署Tomcat服务器的相关文章

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败解决方案

即上篇通过将web项目打成war包部署到Tomcat服务器,解决mysql问题后,又出现了新问题,真是一波三折,所以将解决过程分享给大家,希望能帮助到小伙伴们~ 将打好的war包拷贝到Tomcat的webapps目录,然后在Tomcat的bin目录找到startup.bat批处理文件,直接双击执行,结果运行几秒后直接闪退,顿时有种不好的预感,在浏览器访问web项目,结果连localhost:8080都无法访问,web项目未发布成功,一脸懵逼~ 没有日志看不到为啥发布不成功额,想了想,可以稍微修改

我爱Java系列之---【SpringBoot打成war包部署】

1.把下面这句话放入pom.xml中,放上边 <packaging>war</packaging> 2.war包要部署到tomcat服务器中,而springboot中自带了一个,这时候要去掉. <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclus

记录一次SpringBoot打成war包部署到tomcat启动报错

启动时,报错信息如下: 28-Sep-2018 16:55:41.567 严重 [localhost-startStop-1] org.apache.catalina.core.StandardContext.startInternal Error during ServletContainerInitializer processing javax.servlet.ServletException: Failed to instantiate WebApplicationInitializer

SpringBoot之打成war包部署到Tomcat

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

Web项目打成war包部署到tomcat时报MySQL Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES)错误解决方案

Web项目使用使用root账号root密码进行部署,通过Eclipse加载到Tomcat服务器可以发布成功,打成war包放到tomcat的webapps目录无法发布成功,报错: jdbc.properties涉及Mysql配置: 错误很明显,与MySQL密码有关,但是两种方式部署项目使用的jdbc.properties配置文件是一样的.所以肯定不是密码不对引起的,只好找度娘,O(∩_∩)O哈哈~. 网上大部分帖通过运行mysql -u root -p命令登录时也会报这个错误,所以,我就尝试这种方

如何在阿里云上部署war包到tomcat服务器

一. 准备工作:xshell和xftp 首先我们得确保,xshell能够远程连接阿里云ECS,xftp能够保证windows和linux之间的文件传输(当然也可以选择FileZilla,但xftp感觉更好用一些) 如何配置xshell和xftp: 名称:自定义 协议和端口号:xshell默认是SSH协议,端口号是22,xftp是FTP协议,端口号是21,但是我用FTP协议连接阿里云,总是连接不上,所以把协议换成SFTP,端口号换成22,就可以连上,所以建议这种情况下,都填成SSH协议 登录名和密

osgi应用使用桥接的方式打成war包部署在websphere上时遇到的与cxf相关的问题

原来我们的程序都是基于Equinox架构的,但是后面因为要实现打成war包在中间件中部署的需求,使用了eclipse官方提供的桥接方式实现. 桥接的部分后面有时间了我专门写一个文章来说,不明白的暂时请参考eclipse官方文档.这里主要说一下已经桥接成功,但是在使用CXF时遇到问题的情况. 本来在其他中间件里跑得好好的程序,一放到websphere_v8里,就各种报错,都是与axis2有关的,但是我们的项目并没有使用axis2,而是使用cxf. 报错类似如下(我有3个环境,每个报的错都不同,不过

将war包部署到服务器的详细步骤

第一步: 先将项目打包成war文件,也就是将在项目上单击鼠标右键,选择Export: 选择WAR file,点击下一步: 会出现如下所示,选择你要保存的位置,点击完成: 在你所选择的地方会有个如下所示的war文件: 以上步骤只是完成了将项目打包成war文件的步骤,现在来说将war包部署到服务器的步骤: 第二步: 先将war包用类似于ftp的工具(我自己用的是ftp,这种工具很多的)上传到固定位置 第三步: 一般是先停止tomcat,Linux命令:shutdow.sh,将war放到tomcat的

将web项目打成war包部署在tomcat步骤

1.将自己的项目打成war包. 2.将打包好的war复制到${tomcat.home}/webapps项目下. 3.在${tomcat.hom}/conf目录下打开server.xml文件,找到Host节点,在Host节点下添加: <Context docBase="D:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\Products.war" path="/Products" relo

如何部署war包到tomcat服务器

一. 什么是war包 WAR(Web Archive file)网络应用程序文件,是与平台无关的文件格式,它允许将很多文件组合成一个压缩文件.war专用在web方面,一个war包可以理解为一个web项目,里面是项目的所有东西. 二. 安装jdk 由于tomcat是用Java语言开发的,所以必须先安装java运行环境,jdk(java开发工具包)安装如下: JDK安装与环境变量配置 三. 安装tomcat tomcat7的下载地址:https://tomcat.apache.org/downloa