Spring MVC 主題解析器

2018-07-26 14:26 更新

上一小節(jié),我們講了如何定義主題,定義之后,你要決定使用哪個(gè)主題。DispatcherServlet會(huì)查找一個(gè)名稱(chēng)為themeResolver的bean以確定使用哪個(gè)ThemeResolver的實(shí)現(xiàn)。主題解析器的工作原理與地區(qū)解析器LocaleResolver的工作原理大同小異。它會(huì)檢測(cè),對(duì)于一個(gè)請(qǐng)求來(lái)說(shuō),應(yīng)該使用哪個(gè)主題,同時(shí)它也可以修改一個(gè)請(qǐng)求所應(yīng)應(yīng)用的主題。Spring提供了下列的這些主題解析器:

表21.5. ThemeResolver接口的實(shí)現(xiàn)

類(lèi)名描述
FixedThemeResolver選擇一個(gè)固定的主題,這是通過(guò)設(shè)置defaultThemeName這個(gè)屬性值實(shí)現(xiàn)的
SessionThemeResolver請(qǐng)求相關(guān)的主題保存在用戶(hù)的HTTP會(huì)話(huà)(session)中。對(duì)于每個(gè)會(huì)話(huà)來(lái)說(shuō),它只需要被設(shè)置一次,但它不能在會(huì)話(huà)之間保存
CookieThemeResolver選中的主題被保存在客戶(hù)端的cookie中

Spring也提供了一個(gè)主題更改攔截器ThemeChangeInterceptor,以支持主題的更換。這很容易做到,只需要在請(qǐng)求中攜帶一個(gè)簡(jiǎn)單的請(qǐng)求參數(shù)即可。


以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)