《开启微服务之旅:Spring Boot Web开发》(三)

    1. 使用外置的 Servlet 容器

嵌入式Servlet容器:应用打成可执行的jar

优点:简单、便携;

缺点:默认不支持JSP、优化定制比较复杂.;

外置的Servlet容器:外面安装Tomcat---应用war包的方式打包;

步骤

1)、必须创建一个war项目;(利用idea创建好目录结构)

2)、将嵌入式的Tomcat指定为provided;

|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring‐boot‐starter‐tomcat</artifactId> <scope>provided</scope> </dependency> |

3)配置项目的目录结构

4)部署Tomcat

3)、必须编写一个SpringBootServletInitializer的子类,并调用configure方法

|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| public class ServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { //传入SpringBoot应用的主程序 return application.sources(SpringBoot04WebJspApplication.class); } } |

4)、启动服务器就可以使用;

原理

jar包:执行SpringBoot主类的main方法,启动ioc容器,创建嵌入式的Servlet容器;

war包:启动服务器,服务器启动SpringBoot应用【SpringBootServletInitializer】,启动ioc容器;

相关推荐
jserTang10 小时前
Claude Code 源码深度解析 - 前言
前端·javascript·后端
hehelm10 小时前
vector模拟实现
前端·javascript·算法
|晴 天|10 小时前
[特殊字符]️ Vue 3项目架构设计:从2200行单文件到24个组件
前端·javascript·vue.js
FrontAI10 小时前
深入浅出 LangChain —— 第三章:模型抽象层
前端·人工智能·typescript·langchain·ai agent
givemeacar10 小时前
spring-boot-starter和spring-boot-starter-web的关联
前端
user_admin_god11 小时前
OpenCode入门到入坑
java·人工智能·spring boot·语言模型
leoZ23111 小时前
金仓老旧项目改造-10
开发语言·前端·人工智能·python·金仓
接着奏乐接着舞11 小时前
react redux Toolkit 分组更推荐
前端·javascript·react.js
笨笨狗吞噬者11 小时前
uni-app 运行时揭秘:styleIsolation 的转化
前端·微信小程序·uni-app
codeejun11 小时前
每日一Go-52、Go微服务--请求超时与熔断策略实战
微服务·golang·iphone