加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

Spring Boot 发展历史说明

发布时间:2021-05-27 18:51:46 所属栏目:编程 来源:互联网
导读:起首三个按钮别离对应了三个差异的样式,我们先把这三个差异的样式界说出来,别离如下: blue.css: body{ background-color:#05e1ff; } green.css: body{ back

起首三个按钮别离对应了三个差异的样式,我们先把这三个差异的样式界说出来,别离如下:

blue.css:

body{ 

    background-color: #05e1ff; 

green.css:

body{ 

    background-color: #aaff9c; 

red.css:

body{ 

    background-color: #ff0721; 

主题的界说,每每是一组样式,因此我们一样平常都是在一个 properties 文件中将统一主题的样式设置在一路,这样利便后期加载。

以是接下来我们在 resources 目次下新建 theme 目次,然后在 theme 目次中建设三个文件,内容如下:

blue.properties:

index.body=/css/blue.css 

green.properties:

index.body=/css/green.css 

red.properties:

index.body=/css/red.css 

在差异的 properties 设置文件中引入差异的样式,可是样式界说的 key 都是 index.body,这样利便后期在页面中引入。

接下来在 SpringMVC 容器中设置三个 Bean,如下:

<mvc:interceptors> 

    <mvc:interceptor> 

        <mvc:mapping path="/**"/> 

        <bean class="org.springframework.web.servlet.theme.ThemeChangeInterceptor"> 

            <property name="paramName" value="theme"/> 

        </bean> 

    </mvc:interceptor> 

</mvc:interceptors> 

<bean id="themeSource" class="org.springframework.ui.context.support.ResourceBundleThemeSource"> 

    <property name="basenamePrefix" value="theme."/> 

</bean> 

<bean id="themeResolver" class="org.springframework.web.servlet.theme.SessionThemeResolver"> 

    <property name="defaultThemeName" value="blue"/> 

</bean> 

起首设置拦截器 ThemeChangeInterceptor,这个拦截器用来理会主题参数,参数的 key 为 theme,譬喻哀求地点是 /index?theme=blue,该拦截器就会自动配置体系主题为 blue。虽然也可以不设置拦截器,假如不设置的话,就可以单独提供一个修改主题的接口,然后手动修改主题,相同下面这样:

@Autowired 

private ThemeResolver themeResolver; 

@RequestMapping(path = "/01/{theme}",method = RequestMethod.GET) 

public String theme1(@PathVariable("theme") String themeStr, HttpServletRequest request, HttpServletResponse response){ 

    themeResolver.setThemeName(request,response, themeStr); 

    return "redirect:/01"; 

themeStr 就是新的主题名称,将其设置给 themeResolver 即可。

接下来设置 ResourceBundleThemeSource,这个 Bean 首要是为了加载主题文件,必要设置一个 basenamePrefix 属性,假如我们的主题文件放在文件夹中,这个 basenamePrefix 的值就是 文件夹名称.。

接下来设置主题理会器,主题理会器有三种,别离是 CookieThemeResolver、FixedThemeResolver、SessionThemeResolver,这里我们行使的是 SessionThemeResolver,主题信息将被生涯在 Session 中,只要 Session 稳固,主题就一向有用。这三个主题理会器松哥会在下一末节中和各人细心说明。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读