SpringBoot 创建web项目并部署到外部Tomcat
发布时间 - 2026-01-11 01:38:35 点击率:次前言

使用SpringBoot来开发项目相对于传统模式,要快速优雅许多,相信目前国内绝大部分web项目的开发还没有使用SpringBoot来做,如果你正需要开发一个web项目,不妨尝试使用SpringBoot来做。
本身SpringBoot是内嵌了web服务器,不需要单独的Tomcat,但是实际生产环境中,如果是web项目,Tomcat肯定是运维部门部署好了的,这个Tomcat,做了一些个性化的设置,开发出来的项目需要部署到这个Tomcat,如果是使用SpringBoot开发web服务,我认为可以直接使用内嵌的Tomcat,简单易于维护。
技术框架
- SpringBoot
- Maven
- Tomcat8
要点
- 启动类Application.java需要继承SpringBootServletInitializer
- 打包war的时候,过滤tomcat依赖,需要添加<scope>provided</scope>
- 通过maven-war-plugin执行打包文件名,在application.properties文件中指定web项目的上下文
- 老外写的文章https://www.mkyong.com/spring-boot/spring-boot-deploy-war-file-to-tomcat/ 英文好的同学可以直接查看这篇文章
开发过程
1.创建一个Maven Project(quickstart),名称为myweb,添加POM依赖
<modelVersion>4.0.0</modelVersion>
<groupId>com.boyue</groupId>
<artifactId>myweb</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>myweb Maven Webapp</name>
<url>http://maven.apache.org</url>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.2.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<warName>myweb</warName>
</configuration>
</plugin>
</plugins>
</build>
2.创建Application.java
@SpringBootApplication
public class SpringBootWebApplication extends SpringBootServletInitializer {
public static void main(String[] args) throws Exception {
SpringApplication.run(SpringBootWebApplication.class, args);
}
}
3.创建IndexController.java
@Controller
@RequestMapping("/")
public class IndexController{
@RequestMapping("/index")
public String index(ModelMap map){
map.addAttribute("host","www.");
return "index";
}
}
4.在src/main/resources下创建application.properties
server.contextPath=/myweb
5.在src/main/resources创建templates文件夹,添加index.html文件
<!DOCTYPE HTML>
<html>
<head lang="en">
<meta charset="UTF-8" />
<title></title>
</head>
<body>
<h1 th:text="${host}"></h1>
</body>
6.运行方式
- 直接启动Application.java的main函数,通过SpringBoot内嵌的Tomcat运行
- 执行mvn package 生产"myweb.war"包,拷贝到自己部署的Tomcat下,启动Tomcat运行
7.运行结果
访问http://localhost:8080/myweb/index
页面显示www.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# spring
# boot
# web项目
# springboot的web项目
# tomcat
# 解决springboot 部署到 weblogic 中 jar 包冲突的问题
# SpringBoot项目部署在weblogic中间件的注意事项说明
# 解决weblogic部署springboot项目步骤及可能会出现的问题
# SpringBoot部署在Weblogic的操作步骤
# 运用springboot搭建并部署web项目的示例
# 从0到1构建springboot web应用镜像并使用容器部署的过程
# 内嵌
# 可以直接
# 来做
# 还没有
# 好了
# 不需要
# 我认为
# 英文
# 这篇文章
# 相对于
# 创建一个
# 要快
# 大家多多
# 开发项目
# 你正
# 拷贝到
# br
# Project
# quickstart
# myweb
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势
edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】
如何确保西部建站助手FTP传输的安全性?
如何快速查询网址的建站时间与历史轨迹?
如何在香港免费服务器上快速搭建网站?
如何自定义建站之星网站的导航菜单样式?
Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程
如何用IIS7快速搭建并优化网站站点?
Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】
Laravel如何使用Livewire构建动态组件?(入门代码)
如何有效防御Web建站篡改攻击?
个人摄影网站制作流程,摄影爱好者都去什么网站?
Laravel如何与Docker(Sail)协同开发?(环境搭建教程)
Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】
Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
5种Android数据存储方式汇总
个人网站制作流程图片大全,个人网站如何注销?
使用PHP下载CSS文件中的所有图片【几行代码即可实现】
EditPlus中的正则表达式 实战(4)
电视网站制作tvbox接口,云海电视怎样自定义添加电视源?
Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优
如何实现javascript表单验证_正则表达式有哪些实用技巧
如何在VPS电脑上快速搭建网站?
HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】
bootstrap日历插件datetimepicker使用方法
韩国服务器如何优化跨境访问实现高效连接?
Mybatis 中的insertOrUpdate操作
佛山网站制作系统,佛山企业变更地址网上办理步骤?
高端网站建设与定制开发一站式解决方案 中企动力
Laravel Seeder填充数据教程_Laravel模型工厂Factory使用
Laravel如何使用Eloquent进行子查询
HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
如何快速启动建站代理加盟业务?
Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询
Laravel怎么集成Vue.js_Laravel Mix配置Vue开发环境
Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践
javascript中的数组方法有哪些_如何利用数组方法简化数据处理
Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程
开心动漫网站制作软件下载,十分开心动画为何停播?
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
linux写shell需要注意的问题(必看)
Laravel如何实现API版本控制_Laravel版本化API设计方案
装修招标网站设计制作流程,装修招标流程?
打造顶配客厅影院,这份100寸电视推荐名单请查收

