还需要将@EnableWebMvc 注释添加到@Configuration 类,并定义一个视图解析器来解析从控制器返回的视图:
- @EnableWebMvc
- @Configuration
- public class ClientWebConfig implements WebMvcConfigurer {
- @Bean
- public ViewResolver viewResolver() {
- InternalResourceViewResolver bean
- = new InternalResourceViewResolver();
- bean.setViewClass(JstlView.class);
- bean.setPrefix("/WEB-INF/view/");
- bean.setSuffix(".jsp");
- return bean;
- }
- }
和上述操作一比,一旦我们添加了Web 启动程序,Spring Boot 只需要在application 配置文件中配置几个属性来完成如上操作:
- spring.mvc.view.prefix=/WEB-INF/jsp/
- spring.mvc.view.suffix=.jsp
上面的所有Spring配置都是通过一个名为auto-configuration的过程添加Boot web starter 来自动包含的。
这意味着Spring Boot 将查看应用程序中存在的依赖项,属性和bean ,并根据这些依赖项,对属性和bean 进行配置。当然,如果我们想要添加自己的自定义配置,那么Spring Boot 自动配置将会退回。
4.3、配置模板引擎
现在我们来看下如何在Spring和Spring Boot中配置Thymeleaf模板引擎。
在Spring 中,我们需要为视图解析器添加thymeleaf-spring5 依赖项和一些配置:
- @Configuration
- @EnableWebMvc
- public class MvcWebConfig implements WebMvcConfigurer {
-
- @Autowired
- private ApplicationContext applicationContext;
-
- @Bean
- public SpringResourceTemplateResolver templateResolver() {
- SpringResourceTemplateResolver templateResolver = new SpringResourceTemplateResolver();
- templateResolver.setApplicationContext(applicationContext);
- templateResolver.setPrefix("/WEB-INF/views/");
- templateResolver.setSuffix(".html");
- return templateResolver;
- }
-
- @Bean
- public SpringTemplateEngine templateEngine() {
- SpringTemplateEngine templateEngine = new SpringTemplateEngine();
- templateEngine.setTemplateResolver(templateResolver());
- templateEngine.setEnableSpringELCompiler(true);
- return templateEngine;
- }
-
- @Override
- public void configureViewResolvers(ViewResolverRegistry registry) {
- ThymeleafViewResolver resolver = new ThymeleafViewResolver();
- resolver.setTemplateEngine(templateEngine());
- registry.viewResolver(resolver);
- }
- }
(编辑:晋中站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|