12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- /*
- * Copyright 2020 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- package example;
- import org.thymeleaf.spring6.ISpringTemplateEngine;
- import org.thymeleaf.spring6.SpringTemplateEngine;
- import org.thymeleaf.spring6.templateresolver.SpringResourceTemplateResolver;
- import org.thymeleaf.spring6.view.ThymeleafViewResolver;
- import org.thymeleaf.templatemode.TemplateMode;
- import org.thymeleaf.templateresolver.ITemplateResolver;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.core.Ordered;
- import org.springframework.web.servlet.ViewResolver;
- import org.springframework.web.servlet.config.annotation.EnableWebMvc;
- import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
- import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
- import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
- @EnableWebMvc
- @Configuration
- public class WebMvcConfiguration implements WebMvcConfigurer {
- @Override
- public void addViewControllers(ViewControllerRegistry registry) {
- registry.setOrder(Ordered.HIGHEST_PRECEDENCE);
- }
- @Override
- public void addResourceHandlers(ResourceHandlerRegistry registry) {
- // @formatter:off
- registry.addResourceHandler("/resources/**")
- .addResourceLocations("classpath:/resources/")
- .setCachePeriod(31556926);
- // @formatter:on
- registry.setOrder(Ordered.HIGHEST_PRECEDENCE);
- }
- @Bean
- public ViewResolver viewResolver(ISpringTemplateEngine templateEngine) {
- ThymeleafViewResolver resolver = new ThymeleafViewResolver();
- resolver.setTemplateEngine(templateEngine);
- resolver.setCharacterEncoding("UTF-8");
- return resolver;
- }
- @Bean
- public SpringTemplateEngine templateEngine(ITemplateResolver templateResolver) {
- SpringTemplateEngine engine = new SpringTemplateEngine();
- engine.setEnableSpringELCompiler(true);
- engine.setTemplateResolver(templateResolver);
- return engine;
- }
- @Bean
- public SpringResourceTemplateResolver templateResolver() {
- SpringResourceTemplateResolver resolver = new SpringResourceTemplateResolver();
- resolver.setPrefix("classpath:/templates/");
- resolver.setSuffix(".html");
- resolver.setTemplateMode(TemplateMode.HTML);
- return resolver;
- }
- }
|