Spring Boot项目打war包并部署TOMCAT

1.打war包

pom.xml文件设置

(1)

<packaging>war</packaging>

(2)

<!--(就不用再排除内嵌tomcat和加入servlet-api了)-->

<dependency>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-tomcat</artifactId>

    <scope>provided</scope>

</dependency>

(3)

<!-- war 插件 -->

<plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-war-plugin</artifactId>

    <version>3.2.1</version>

    <configuration> <warSourceExcludes>src/main/resources/**</warSourceExcludes>

        <warName>springboot-api</warName>

        <encoding>UTF-8</encoding>

    </configuration>

</plugin>

(4)Springboot启动类继承如下(用于支持将 Spring Boot 应用部署为 WAR 文件并在 Servlet 容器中运行)

public class SpringbootDemo01Application extends SpringBootServletInitializer {

    public static void main(String[] args) {

        SpringApplication.run(SpringbootDemo01Application.class, args);

    }

}

(5).数据库链接地址不能叫localhost或127.0.0.1.找到本地ip地址(小黑窗口ipconfig)

(6)

(7)结果

2.war部署到tomcat

注意:确保JDK安装和环境变量完成配置、tomcat安装

(1)war包放到tomcat下的webapps路径下

(2).tomcat的bin文件夹下,执行如下命令(启动tomcat)

./startup.sh

(3)访问项目路径

IP地址:Tomcat端口号/项目名称/方法名称

3.问题

问题1:样式不生效问题

将静态资源文件放置在src/main/webapp目录下是因为这是传统的Java Web项目的约定和习惯。在传统的Java Web项目中,静态资源文件(如HTML、CSS、JavaScript、图片等)通常被放置在webapp目录下,这样它们可以直接被外部访问。

当你将Spring Boot应用部署到外部Tomcat服务器时,将静态资源文件放置在src/main/webapp目录下可以确保它们能够被正确处理和暴露给外部访问。这是因为外部Tomcat服务器会将webapp目录作为Web应用程序的根目录,并将其中的静态资源文件映射到访问路径上。

jsp页面引入

<link rel="stylesheet" type="text/css" href="/static/css/css.css">

<script type="text/javascript" src="/static/js/jquery-1.8.3.js"></script>

浏览器访问路径IP地址:Tomcat端口号/项目名称/方法名称

问题2:想要不带项目名称的解决办法

修改tomcat/conf/server.xml,添加如下代码(注意:在HOST标签内)

<Context docBase="springboot-api" path="" reloadable="true"></Context>

<Context> 标签中的 path 属性设置为空字符串 ""。这样,应用将会在 Tomcat 的根路径下访问。

docBase 值是war的名称

请注意,修改了 server.xml 配置文件后,需要重启 Tomcat 才能生效。

  • 18
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值