配置springmvc多解析器
程序员文章站
2024-03-26 08:52:53
...
方式一:
1、重写JstlView.checkResource(Locale locale)
方法
package top.hsocode.util;
import org.springframework.web.servlet.view.JstlView;
import java.io.File;
import java.util.Locale;
public class DefaultJstlView extends JstlView {
@Override
public boolean checkResource(Locale locale) throws Exception {
File file = new File(this.getServletContext().getRealPath("/") + getUrl());
return file.exists();
}
}
2、dispatcher-servlet.xml配置
<!--view multi-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="top.hsocode.util.DefaultJstlView"/>
<property name="prefix" value="/WEB-INF/view/"/>
<property name="order" value="1"/>
<property name="suffix" value=".jsp"/>
</bean>
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/view/"/>
<property name="suffix" value=".html"/>
<property name="contentType" value="text/html;charset=UTF-8"/>
<property name="order" value="4"/>
</bean>
3、web.xml配置
<!--html请求,处理静态资源-->
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
方式二:整合springmvc和freemaker
1、dispatcher-servlet.xml配置
<!-- 配置freeMarker视图解析器 -->
<bean id="viewResolverFtl" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/>
<property name="contentType" value="text/html; charset=utf-8"/>
<property name="cache" value="true" />
<property name="suffix" value=".html" />
<property name="order" value="0"/>
</bean>
<!-- 配置freeMarker的模板路径 -->
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath">
<value>/WEB-INF/view/</value>
</property>
<property name="freemarkerVariables">
<map>
<entry key="xml_escape" value-ref="fmXmlEscape" />
</map>
</property>
<property name="defaultEncoding">
<value>utf-8</value>
</property>
</bean>
<bean id="fmXmlEscape" class="freemarker.template.utility.XmlEscape"/>
2、需要两个依赖:
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.23</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>4.3.14.RELEASE</version>
</dependency>
下一篇: 当前标签固定的js标签云代码 标签云
推荐阅读
-
SpringMVC自定义视图+内容协商(RESTful MVC)实现超级灵活的多视图协商
-
配置springmvc多解析器
-
springmvc配置多视图时的异常
-
SpringMVC 统一异常管理配置方式 博客分类: Spring MVC springMVC异常
-
springmvc的ajax配置,实现 博客分类: ajax ajax
-
Spring Boot 多环境的配置文件配置
-
Spring Boot-配置文件-多环境配置
-
spring项目配置多环境配置文件
-
js,css,image...资源访问 博客分类: spring springMVC配置静态资源
-
js,css,image...资源访问 博客分类: spring springMVC配置静态资源