小D课堂 - 零基础入门SpringBoot2.X到实战_第5节 SpringBoot部署war项目到tomcat9和启动原理讲解_22、SpringBoot启动方式和部署war项目到tomcat9
笔记
1、SpringBoot启动方式讲解和部署war项目到tomcat9
简介:SpringBoot常见启动方式讲解和部署war项目Tomcat
1、ide启动
2、jar包方式启动
maven插件:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
如果没有加,则执行jar包 ,报错如下
java -jar spring-boot-demo-0.0.1-SNAPSHOT.jar
no main manifest attribute, in spring-boot-demo-0.0.1-SNAPSHOT.jar
如果有安装maven 用 mvn spring-boot:run
项目结构
example.jar
|
+-META-INF
| +-MANIFEST.MF
+-org
| +-springframework
| +-boot
| +-loader
| +-<spring boot loader classes>
+-BOOT-INF
+-classes
| +-mycompany
| +-project
| +-YourClasses.class
+-lib
+-dependency1.jar
+-dependency2.jar
目录结构讲解
https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#executable-jar-jar-file-structure
开始
新建的一个空的项目,没有什么依赖
里面建了一个controller方便我们测试
包装了一个对象方便做测试用
配置文件是空的
pom.xml依赖就只有这两个依赖的jar包
默认的启动方式
mavnen打包的方式启动
target里面就会生成一个jar包
jar包方式启动 一定要加的插件。他会帮我们把这个程序打成jar包
如果没有加jar包的引用就会报错
jar包内目录结构
spring官方的项目结构图
https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#executable-jar-jar-file-structure
第三种方式启动-war包方式启动
打包方式改成war包的方式
在build标签里面配置上项目名称
在编译的时候可能pom.xml会报错。并不影响我们的构建
鼠标右键选择Delete
打包成功
修改启动类的初始化方式
继承了SpringBootServletInitalizer。复写里面的方法配置一下
target里面有很多杂七杂八的东西,这里先先用maven clean清理一下
清理后target目录就是空的了
打包后的war包
把war包复制出来放到桌面上
下载tomcat
tocmat下载 https://tomcat.apache.org/download-90.cgi
根据自己的系统进行下载
这是解压后的目录
进入到webapps目录把里面的东西删掉。
把我们刚才打包的war包复制到这个目录里面来
windows系统到bin的目录,双击Startup.bat启动命令就课可以了。
如果出错了,可能会闪退。那么就可以打开启动命令 在最下面加上pause;看下日志 提示的是什么错误
程序启动后,自动把我们的war包进行解压
tomcat默认是80端口。这里的端口可能改过了。这里是8080
补充知识
4、启动容器介绍和第三方测试数据讲解
使用Jmter测试工具测试性能,QPS,TPS,RT
https://examples.javacodegeeks.com/enterprise-java/spring/tomcat-vs-jetty-vs-undertow-comparison-of-spring-boot-embedded-servlet-containers/
测试是用的jmeter压力测试软件。开源的支持可视化的报告