zoukankan      html  css  js  c++  java
  • springmvc配置html视图

    平时做Javaweb的开发,多是用jsp做页面。但随着MVVM前端框架的逐渐流行和前后端分离的开发方式的愈发规范,jsp显得臃肿起来,故尝试将jsp替换为对前端兼容更好的H5

    项目路径:

    在maven中,先添加freemarker的依赖:

    <dependencies>
    
             // ..省略其他配置
    
    <!--html视图解析器freemarker-->
        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
            <version>2.3.22</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context-support</artifactId>
            <version>4.1.6.RELEASE</version>
        </dependency>
    
    </dependencies>

    applicationContext.xml添加bean:

    <!-- 这里配置的是html视图解析器freemarker-->
    <bean id="freemarkerConfig"
          class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
        <property name="templateLoaderPath" value="/WEB-INF/views/" />
        <property name="freemarkerSettings">
            <props>
                <prop key="template_update_delay">0</prop>
                <prop key="default_encoding">UTF-8</prop>
                <prop key="number_format">0.##########</prop>
                <prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>
                <prop key="classic_compatible">true</prop>
                <prop key="template_exception_handler">ignore</prop>
            </props>
        </property>
    </bean>

    spring-mvc.xml添加bean:

    <bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
        <property name="exposeRequestAttributes" value="true" />
        <property name="exposeSessionAttributes" value="true" />
        <property name="viewClass">
            <value>org.springframework.web.servlet.view.freemarker.FreeMarkerView</value>
        </property>
        <property name="cache"><value>true</value></property>
        <!--这里需要注意一下,我注释了下面这样一行代码,这行代码的意思就是指引freemarker需要解析的文件的位置。注释掉原因是因为
         applicationContext.xml里有这样一行代码:<property name="templateLoaderPath" value="/WEB-INF/views/" /> 已经指定了视图位置。如果我们这里依然保留下方代码,页面回报406的找不到的错误 -->
        <!--<property name="prefix"><value>/WEB-INF/views/</value></property>-->
        <property name="suffix"><value>.html</value></property>
        <property name="contentType">
            <value>text/html; charset=UTF-8</value>
        </property>
    </bean>

     这样,只要将对应名字的xxx.jsp文件改成xxx.html就可以实现映射了。

  • 相关阅读:
    提交代码报错不同方式
    pow log 与 (int)
    优先队列的创建
    积性函数
    静态主席树,动态主席树(一种可持久化线段树)
    codeblocks 输入、输出文件的位置
    后缀自动机
    BellmanFord 最短路
    struct
    hdu1501 动态规划
  • 原文地址:https://www.cnblogs.com/libera11/p/7884189.html
Copyright © 2011-2022 走看看