zoukankan      html  css  js  c++  java
  • springMVC配置jsp/html视图解析器

    参考自springMVC配置jsp、html多视图解析器,本文稍作补充

    1、maven项目引入freemark相关jar包

    freemaker是以个模板引擎,可以根据提供的数据和创建好的模板,去自动的创建html静态页面。所以在返回html视图时可以用这个引擎结合数据生成html静态页面。

    <dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-context-support</artifactId>
      <version>5.0.7.RELEASE</version>
    </dependency>
    
    <dependency>
      <groupId>org.freemarker</groupId>
      <artifactId>freemarker</artifactId>
      <version>2.3.28</version>
    </dependency>
    

    注意freemarker版本,如果版本过低的话可能会有java.lang.NoSuchMethodError: freemarker.template.Configuration.(Lfreemarker/template/Version;)这样的报错

    2、freemarker.properties

    在src/main/resources下新建freemarker.properties配置文件,主要为了解决freemarker返回HTML页面中文乱码问题

    tag_syntax=auto_detect  
    template_update_delay=60  
    default_encoding=UTF-8  
    output_encoding=UTF-8  
    locale=zh_CN  
    date_format=yyyy-MM-dd  
    time_format=HH:mm:ss  
    datetime_format=yyyy-MM-dd HH:mm:ss  
    classic_compatible=true  
    template_exception_handler=ignore  
    

    3、配置视图解析器

    在springmvc.xml中配置jsp、html的视图解析器。注意一点是,InternalResourceViewResolver必须总是赋予最低的优先级(最大的order值),因为不管返回什么视图名称,它都将解析视图。如果它的优先级高于其它解析器的优先级的话,它将使得其它具有较低优先级的解析器没有机会解析视图。

    <bean id="freemarkerConfiguration"
          class="org.springframework.beans.factory.config.PropertiesFactoryBean">
        <property name="location" value="classpath:freemarker.properties" />
    </bean>
    <!-- html视图解析器 必须先配置freemarkerConfig,注意html是没有prefix前缀属性的 -->
    <bean id="freemarkerConfig"
          class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
        <property name="freemarkerSettings" ref="freemarkerConfiguration" />
        <property name="templateLoaderPath">
            <value>/WEB-INF/html/</value>
        </property>
    </bean>
    <bean id="htmlviewResolver"
          class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
        <property name="suffix" value=".html" />
        <property name="order" value="0"></property>
        <property name="contentType" value="text/html;charset=UTF-8"></property>
    </bean>
    
    
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/jsp/"></property>
        <property name="suffix" value=".jsp"></property>
        <property name="order" value="2"></property>
    </bean>
    
  • 相关阅读:
    Confluence 6 配置服务器基础地址示例
    (七)git分支的操作
    (六)最最基本的git操作
    (四)创建表、查看表、插入记录
    (三)数据库基本操作(创建、查询、修改、删除数据库)
    c++第九天
    (五)使用GitHub的前期准备
    (四)github之Git的初始设置
    (三)github之GIT的导入
    (二)github的价值意义篇
  • 原文地址:https://www.cnblogs.com/yozar/p/10230113.html
Copyright © 2011-2022 走看看