第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 spring mvc 中使用多個調(diào)度程序 servlet 的優(yōu)點(diǎn)和缺點(diǎn)

在 spring mvc 中使用多個調(diào)度程序 servlet 的優(yōu)點(diǎn)和缺點(diǎn)

墨色風(fēng)雨 2023-09-06 15:42:58
我剛剛發(fā)現(xiàn)在一個 Spring 應(yīng)用程序中可以有多個。 dispatcher-servlets我想知道采用這種方法是否有任何優(yōu)勢,而不是傳統(tǒng)的彈簧方法對所有傳入請求進(jìn)行單一處理。 dispatcher-servlet
查看完整描述

1 回答

?
叮當(dāng)貓咪

TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個贊

來自醫(yī)生

Web 應(yīng)用程序可以定義任意數(shù)量的 DispatcherServlet。每個 servlet 將在自己的命名空間中運(yùn)行,加載自己的應(yīng)用程序上下文以及映射、處理程序等。只有由 ContextLoaderListener 加載的根應(yīng)用程序上下文(如果有)才會被共享。

多個調(diào)度程序 servlet 的優(yōu)點(diǎn)或者為什么我們需要多個調(diào)度程序 servlet?

簡單的答案是以多種形式擁有DispatcherServlet 的功能

調(diào)度程序 servlet 功能


  • Dispatcher Servlet 使用HandlerMapping實(shí)現(xiàn)來控制將請求路由到處理程序?qū)ο?。默認(rèn)為BeanNameUrlHandlerMapping和RequestMappingHandlerMapping。

  • 它的視圖解析策略可以通過ViewResolver實(shí)現(xiàn)來指定,將符號視圖名稱解析為 View 對象。默認(rèn)為InternalResourceViewResolver。

  • 它的異常解決策略可以通過HandlerExceptionResolver指定,例如將某些異常映射到錯誤頁面。

  • 它解決多部分請求的策略由MultipartResolver實(shí)現(xiàn)決定。

  • 它的區(qū)域設(shè)置解析策略由LocaleResolver確定。

  • 它的主題解析策略由ThemeResolver決定。



我將嘗試解釋 提供的一些功能DispatcherServlet


聲明多個調(diào)度程序 servlet
考慮我們有兩個調(diào)度程序 servlet(DS),其中 DS1、DS2 配置有不同的 url 模式 (?**.simple, **.beanName),并且它們使用不同的調(diào)度程序 servlet 配置,如下所示。

DispatcherServlet? ? ?- simpleUrlHandlerDispatcherServlet

contextConfigLocation - /WEB-INF/simpleUrlHandlerMapping.xml

<url-pattern>*.simple</url-pattern>


DispatcherServlet? ? ?- beanNameUrlHandlerDispatcherServlet

contextConfigLocation - /WEB-INF/beanNameUrlHandlerMapping.xml

<url-pattern>*.beanName</url-pattern>

優(yōu)點(diǎn) 1:我們可以針對不同的 URL 集使用不同的 HandlerMapping


DS1 bean 名稱 url 處理程序映射配置


<bean name="/hello.beanName" class="com.pvn.mvc.HelloController" />

<bean name="/hi.beanName" class="com.pvn.mvc.HiController" />

DS2 簡單 url 處理程序映射配置


<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">

? ? <property name="mappings">

? ? ? ? <props>

? ? ? ? ? ? <prop key="/hello.simple">simpleHello</prop>

? ? ? ? ? ? <prop key="/hi.simple">simpleHi</prop>

? ? ? ? </props>

? ? </property>

</bean>

優(yōu)點(diǎn) 2:我們可以為不同的 URL 集使用不同的視圖解析器。


DS1 的InternalResourceViewResolver

僅處理prefix + returned String + suffix. DS2 的

TilesViewResolver

其實(shí)現(xiàn)由 apachetiles 提供,這是一個基于布局/骨架的插件高級功能,如下所示。

https://img1.sycdn.imooc.com/64f82dc300011a6e05330307.jpg

或者,如果我們對不同的 URL
匿名用戶集使用具有不同布局的 TilesViewResolver -
登錄用戶的不同布局 - 不同的布局

優(yōu)點(diǎn) 3:我們可以為不同的 URL 集使用不同的主題解析器。
這些解析器持續(xù)監(jiān)視 cookie/會話來解析主題并提供合格的樣式表/主題(如下圖所示)。下面給出了CookieThemeResolver的結(jié)果的示例。
注意:這不是關(guān)于主題配置,而是關(guān)于主題解析器配置。

https://img2.sycdn.imooc.com/64f82dd00001fbd206560416.jpg

優(yōu)點(diǎn) 4:我們可以為不同的 URL 集使用不同的區(qū)域設(shè)置解析器。
這些解析器持續(xù)監(jiān)視 cookie/session/accept-header 以解析區(qū)域設(shè)置并加載合格的應(yīng)用程序消息(如下圖所示)。下面給出了CookieLocaleResolver的結(jié)果的示例。
注意:這不是關(guān)于區(qū)域設(shè)置配置,而是關(guān)于區(qū)域設(shè)置解析器配置。

https://img1.sycdn.imooc.com/64f82ddd0001152206530289.jpg

查看完整回答
反對 回復(fù) 2023-09-06
  • 1 回答
  • 0 關(guān)注
  • 137 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號