配置Thymeleaf 3.1.1视图解析器(Spring6 + SpringMVC 6 + Tomcat10 + JDK17)

   <!-- SpringResourceTemplateResolver automatically integrates with Spring's own -->
    <!-- resource resolution infrastructure, which is highly recommended.          -->
    <bean id="templateResolver"
          class="org.thymeleaf.spring6.templateresolver.SpringResourceTemplateResolver">
        <property name="prefix" value="/WEB-INF/templates/" />
        <property name="suffix" value=".html" />
        <!-- HTML is the default value, added here for the sake of clarity.          -->
        <property name="templateMode" value="HTML" />
        <!-- Template cache is true by default. Set to false if you want             -->
        <!-- templates to be automatically updated when modified.                    -->
        <property name="cacheable" value="true" />

        <property name="characterEncoding" value="UTF-8" />
    </bean>

    <!-- SpringTemplateEngine automatically applies SpringStandardDialect and      -->
    <!-- enables Spring's own MessageSource message resolution mechanisms.         -->
    <bean id="templateEngine"
          class="org.thymeleaf.spring6.SpringTemplateEngine">
        <property name="templateResolver" ref="templateResolver" />
        <!-- Enabling the SpringEL compiler can speed up execution in most           -->
        <!-- scenarios, but might be incompatible with specific cases when           -->
        <!-- expressions in one template are reused across different data types, so  -->
        <!-- this flag is "false" by default for safer backwards compatibility.      -->
        <property name="enableSpringELCompiler" value="true" />
    </bean>

    <bean class="org.thymeleaf.spring6.view.ThymeleafViewResolver">
        <property name="templateEngine" ref="templateEngine" />
        <!-- NOTE 'order' and 'viewNames' are optional -->
        <property name="order" value="1" />
<!--        <property name="viewNames" value="*.html,*.xhtml" />-->
        <property name="characterEncoding" value="UTF-8"/>
    </bean>

Thymeleaf在使用最新版本的框架时(Spring6 + SpringMVC 6 + Tomcat10 + JDK17 ),出现各种500错误,配置.xml

  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
配置Spring MVC中的Thymeleaf视图解析器,您可以创建一个Java类,并使用以下代码进行配置: ```java import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.ViewResolver; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import org.springframework.web.servlet.view.InternalResourceViewResolver; import org.thymeleaf.spring5.SpringTemplateEngine; import org.thymeleaf.spring5.view.ThymeleafViewResolver; import org.thymeleaf.templateresolver.ServletContextTemplateResolver; @Configuration @EnableWebMvc public class ThymeleafConfig implements WebMvcConfigurer { @Bean public ViewResolver viewResolver() { ThymeleafViewResolver resolver = new ThymeleafViewResolver(); resolver.setTemplateEngine(templateEngine()); resolver.setCharacterEncoding("UTF-8"); return resolver; } @Bean public SpringTemplateEngine templateEngine() { SpringTemplateEngine engine = new SpringTemplateEngine(); engine.setTemplateResolver(templateResolver()); return engine; } @Bean public ServletContextTemplateResolver templateResolver() { ServletContextTemplateResolver resolver = new ServletContextTemplateResolver(); resolver.setPrefix("/WEB-INF/views/"); resolver.setSuffix(".html"); resolver.setTemplateMode("HTML"); return resolver; } } ``` 上述代码中,我们使用`@Configuration`注解将该类标记为配置类。`@EnableWebMvc`注解启用Spring MVC的基本配置。 `viewResolver()`方法创建一个Thymeleaf视图解析器,并设置了模板引擎为`templateEngine()`方法返回的SpringTemplateEngine。 `templateEngine()`方法创建一个SpringTemplateEngine,并设置了模板解析器为`templateResolver()`方法返回的ServletContextTemplateResolver。 `templateResolver()`方法创建一个ServletContextTemplateResolver,并设置了视图前缀、后缀和模板模式。 请注意,上述配置假设您的Thymeleaf模板文件位于`/WEB-INF/views/`目录下,并以`.html`作为文件扩展名。您可以根据您的实际项目结构和需求进行相应的更改。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值