SpringBoot 创建web项目并部署到外部Tomcat
程序员文章站
2023-12-20 11:00:22
前言
使用springboot来开发项目相对于传统模式,要快速优雅许多,相信目前国内绝大部分web项目的开发还没有使用springboot来做,如果你正需要开发一个web...
前言
使用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项目的上下文
- 老外写的文章 英文好的同学可以直接查看这篇文章
开发过程
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.jb51.net"); 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.jb51.net
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
推荐阅读
-
SpringBoot 创建web项目并部署到外部Tomcat
-
运用springboot搭建并部署web项目的示例
-
Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网
-
springboot项目打成war包部署到tomcat遇到的一些问题
-
Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网
-
Web项目打成war包部署到tomcat时报MySQL Access denied for user 'root'@'localhost' (using password: YES)错误解决方案(推)
-
springboot项目部署到独立tomcat的爬坑集锦
-
docker 部署 java web项目到tomcat之后无法显示验证码问题及解决过程 docker tomcat 验证码
-
docker 部署 java web项目到tomcat之后无法显示验证码问题及解决过程 docker tomcat 验证码
-
方便maven的web项目打包和直接部署到tomcat的设置