当前位置: 首页 > news >正文

重庆 网站开发网站建设论文的前言

重庆 网站开发,网站建设论文的前言,曲靖做网站,思政网站建设管理自查报告文章目录 1、切换嵌入式Servlet容器1.1、默认支持的webServer1.2、切换服务器 2、原理2.1、ServletWebServerApplicationContext2.2、作用2.3、ServletWebServerFactoryAutoConfiguration2.4、作用2.5、ServletWebServerFactoryConfiguration 配置类2.6、web服务器工厂作用 3、…

文章目录

  • 1、切换嵌入式Servlet容器
    • 1.1、默认支持的webServer
    • 1.2、切换服务器
  • 2、原理
    • 2.1、ServletWebServerApplicationContext
    • 2.2、作用
    • 2.3、ServletWebServerFactoryAutoConfiguration
    • 2.4、作用
    • 2.5、ServletWebServerFactoryConfiguration 配置类
    • 2.6、web服务器工厂作用
  • 3、定制Servlet容器
    • 3.1、方式一:修改配置文件
    • 3.2、方式二:放入自定义ServletWeb容器工厂
    • 3.3、方式三:ServletWeb容器工厂定制化器


【尚硅谷】SpringBoot2零基础入门教程-讲师:雷丰阳
笔记

路还在继续,梦还在期许

1、切换嵌入式Servlet容器

1.1、默认支持的webServer

TomcatWebServer
JettyWebServer
UndertowWebServer

ServletWebServerApplicationContext 容器启动寻找ServletWebServerFactory 并引导创建服务器。

在这里插入图片描述

1.2、切换服务器

想要切换服务器,只需要导入服务器对应的场景启动器,默认服务器是web场景导入的。

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><exclusions> <!--让web场景排除默认Tomcat依赖--><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></exclusion></exclusions>
</dependency>
<!--加入其它服务器场景-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-undertow</artifactId>
</dependency>

2、原理

创建spring boot 应用,无需在外置部署服务器,应用内置了服务器,应用启动,内置服务器就会自动启动,spring boot 默认启动的服务器就是 Tomcat。

2.1、ServletWebServerApplicationContext

位置:org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext

SpringBoot应用启动发现当前是Web应用,因为导入web场景包-导入tomcat,判断出是web应用会创建一个web版的ioc容器 ServletWebServerApplicationContext。

2.2、作用

ServletWebServerApplicationContext 会在启动的时候寻找 ServletWebServerFactory。(Servlet 的web服务器工厂—> Servlet 的web服务器)

SpringBoot底层默认有很多的WebServer工厂。

TomcatServletWebServerFactory
JettyServletWebServerFactory
UndertowServletWebServerFactory

2.3、ServletWebServerFactoryAutoConfiguration

位置:org.springframework.boot.autoconfigure.web.servlet.ServletWebServerFactoryAutoConfiguration

底层的一个自动配置类,ServletWebServerFactoryAutoConfiguration,用来配置WebServer工厂。

2.4、作用

@Configuration(proxyBeanMethods = false)
@AutoConfigureOrder(Ordered.HIGHEST_PRECEDENCE)
@ConditionalOnClass(ServletRequest.class)
@ConditionalOnWebApplication(type = Type.SERVLET)
@EnableConfigurationProperties(ServerProperties.class)
@Import({ ServletWebServerFactoryAutoConfiguration.BeanPostProcessorsRegistrar.class,ServletWebServerFactoryConfiguration.EmbeddedTomcat.class,ServletWebServerFactoryConfiguration.EmbeddedJetty.class,ServletWebServerFactoryConfiguration.EmbeddedUndertow.class })
public class ServletWebServerFactoryAutoConfiguration {
}

ServletWebServerFactoryAutoConfiguration导入了ServletWebServerFactoryConfiguration(配置类)

2.5、ServletWebServerFactoryConfiguration 配置类

内部有三个web服务器工厂,tomcatServletWebServerFactory、JettyServletWebServerFactory、undertowServletWebServerFactory。

根据动态判断系统中到底导入了哪个Web服务器的包。(默认是web-starter导入tomcat包),容器中就有TomcatServletWebServerFactory。

2.6、web服务器工厂作用

TomcatServletWebServerFactory 创建出Tomcat服务器并启动。

TomcatWebServer 的构造器拥有初始化方法:initialize—this.tomcat.start();

内嵌服务器,就是手动把启动服务器的代码调用。(tomcat核心jar包存在)

3、定制Servlet容器

3.1、方式一:修改配置文件

修改配置文件 server.xxx

3.2、方式二:放入自定义ServletWeb容器工厂

在配置类中放入自定义 ConfigurableServletWebServerFactory

@Bean
public ConfigurableServletWebServerFactory webServerFactory(){TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();factory.setPort(9999);return factory;
}

3.3、方式三:ServletWeb容器工厂定制化器

可以后置的修改一些ServletWeb容器工厂的规则。

xxxxxCustomizer:定制化器,可以改变xxxx的默认规则

把配置文件的值和ServletWebServerFactory 进行绑定。

import org.springframework.boot.web.server.WebServerFactoryCustomizer;
import org.springframework.boot.web.servlet.server.ConfigurableServletWebServerFactory;
import org.springframework.stereotype.Component;@Component
public class CustomizationBean implements WebServerFactoryCustomizer<ConfigurableServletWebServerFactory> {@Overridepublic void customize(ConfigurableServletWebServerFactory server) {server.setPort(9000);}}
http://www.yayakq.cn/news/608162/

相关文章:

  • 电商网站的建设长春火车站高清图片
  • 临沂市建设官方网站seo 成功网站
  • 工会网站建设方案毕节网站网站建设
  • 有什么网站可以做微信支付宝支付宝图片设计制作
  • 怀远县建设局门户网站网站 建站模式
  • 江诗丹顿手表网站酒店网站设计的目的和意义
  • 做爰午夜福利全过程视频网站网站建设认证试题
  • 门户移动网站建设2345网址大全电脑版
  • 如何进行网站设计360优化大师app下载
  • 呼和浩特网站建设宣传学校网站模板设计
  • 重庆seo网站管理免费商品展示页面设计模板
  • 营销型网站建设吉林wordpress标签化关键词
  • 临安营销型网站建设销售网站建设的会计分录
  • 西安营销型网站制作价格景山网站建设公司
  • 兰州市建设局官方网站戒烟网页设计作品欣赏
  • 打开网站 输入内容存在危险字符龙华新区做网站
  • flash网站代码下载wordpress页面多打开空白页
  • 怎么自己做卡盟网站wordpress播放页
  • 编写网站 支付宝wordpress 只看到一个主题
  • 网站打不开是什么原因郑州市装修公司哪家好
  • 国泰君安建设工程官方网站wap网站的未来
  • 男女做网站互联网行业介绍
  • 系部网站建设需求分析运行需求大连seo整站优化
  • 网站开发语言包括哪些企业网站需要多少费用
  • 盐城做网站的哪个公司好微信公众号上怎么上传wordpress
  • 做企业网站要多少钱答辩的时间_老师问了我做的网站可以同时支持的并发用户是多少
  • 南京企业建站系统模板wordpress 显示 当前位置
  • 免费的ppt模板网站有哪些软件开发收费价目表
  • 电商网站制作项目描述集团网站建设哪家好
  • 番禺网站开发多少钱采集微信公众号 做网站