Thymeleaf视图解析器配置
<!-- 配置Thymeleaf视图解析器 -->
<bean id="viewResolver" class="org.thymeleaf.spring5.view.ThymeleafViewResolver">
<property name="order" value="1"/>
<property name="characterEncoding" value="UTF-8"/>
<property name="templateEngine">
<bean class="org.thymeleaf.spring5.SpringTemplateEngine">
<property name="templateResolver">
<bean class="org.thymeleaf.spring5.templateresolver.SpringResourceTemplateResolver">
<!-- 视图前缀 -->
<property name="prefix" value="/WEB-INF/templates/"/>
<!-- 视图后缀 -->
<property name="suffix" value=".html"/>
<property name="templateMode" value="HTML5"/>
<property name="characterEncoding" value="UTF-8" />
</bean>
</property>
</bean>
</property>
</bean>
前端控制器
<servlet>
<servlet-name>DispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:SpringMVC.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
问题分析:
外部导入静态资源:
本人目录结构(SpringMVC框架阶段目录)
引入css,js文件th:href和th:src写法:
启动Tomacat后导入的js,css无效
原因:
SpringMVC中Thymeleaf解析的数据会发送给前端控制器,但是前端控制器一般未开放对静态资源的访问,因此需要在xml配置文件中手动设置开放:
<mvc:default-servlet-handler></mvc:default-servlet-handler>
此语句为开放对静态资源的访问,重新部署服务器就可以导入js,css等外部静态资源了