博客
关于我
配置SpringMVC中的视图解析器
阅读量:485 次
发布时间:2019-03-07

本文共 1659 字,大约阅读时间需要 5 分钟。

视图解析器详解

在Spring MVC开发中,视图解析器是将逻辑视图转换为实际使用的视图文件(如HTML、XML等)的重要组件。本文将详细介绍两种常用的视图解析器:InternalResourceViewResolverFreeMarkerViewResolver,并展示它们的配置与使用方法。

一、InternalResourceViewResolver配置与使用

配置方法:

在Spring MVC的配置文件中(通常为application-servlet.xml),添加如下的Bean配置:

使用示例:

在控制器方法中,使用以下代码来设置视图名:

modelAndView.setViewName("/fruitsList");

特点说明:

  • 简化视图配置: 通过设置prefixsuffix,可以直接在控制器中调用视图名,无需显式定义前缀和后缀。
  • 缓存机制: InternalResourceViewResolver 继承自 AbstractCachingViewResolver,能够缓存已解析的视图,避免重复劳动。
  • 默认路径:,默认将视图文件存放在 /WEB-INF/jsp 目录下,这符合Spring MVC的标准部署方式。
  • 二、FreeMarkerViewResolver配置与使用

    配置方法:

    在Spring MVC的配置文件中添加如下Bean定义:

    使用示例:

    在控制器中设置模板视图名:

    modelAndView.setViewName("fruit");

    特点说明:

  • 模板驱动: FreeMarkerViewResolver 支持使用Freemarker模板,通过逻辑视图名(如ftl:Dashboard)加载对应的模板文件(如/WEB-INF/freemarker/Dashboard.ftl)。
  • 灵活性高: 模板文件可生成任何格式(如HTML、XML、Java源码等),适用于多种应用场景。
  • 配置详细: 需要配置模板路径和依赖库,使FreeMarker能够正确解析模板文件。
  • 模板文件路径示例

    需要在${project}/WEB-INF/freemarker目录下创建对应的模板文件。例如:

    /WEB-INF/freemarker/fm_fruit.ftl

    Maven依赖配置

    确保项目依赖了必要的FreeMarker库和Spring容器支持:

    org.springframework
    spring-context-support
    4.3.6.RELEASE
    org.freemarker
    freemarker
    2.3.28

    技术总结

  • InternalResourceViewResolver: 适用于传统的静态JSP视图配置,缓存机制有效。
  • FreeMarkerViewResolver: 适用于动态模板生成,适合需要灵活视图文件处理的场景。
  • 模板开发建议:
    • 保存模板文件在/WEB-INF/freemarker目录下。
    • 使用Freemarker模板定义数据协议,确保模板与后端模型兼容。
    • 可视根据需求选择模板引擎或其他生成工具,以提升开发效率。
  • 两种视图解析器各有特点,选择时需结合项目需求和开发习惯。FreeMarkerViewResolver的模板驱动功能使其适合需要灵活视图生成的场景,而InternalResourceViewResolver的配置简便性则适合传统JSP开发。

    转载地址:http://wvucz.baihongyu.com/

    你可能感兴趣的文章
    MySQL 中锁的面试题总结
    查看>>
    MySQL 中随机抽样:order by rand limit 的替代方案
    查看>>
    MySQL 为什么需要两阶段提交?
    查看>>
    mysql 为某个字段的值加前缀、去掉前缀
    查看>>
    mysql 主从
    查看>>
    mysql 主从 lock_mysql 主从同步权限mysql 行锁的实现
    查看>>
    mysql 主从互备份_mysql互为主从实战设置详解及自动化备份(Centos7.2)
    查看>>
    mysql 主从关系切换
    查看>>
    mysql 主键重复则覆盖_数据库主键不能重复
    查看>>
    Mysql 优化 or
    查看>>
    mysql 优化器 key_mysql – 选择*和查询优化器
    查看>>
    MySQL 优化:Explain 执行计划详解
    查看>>
    Mysql 会导致锁表的语法
    查看>>
    mysql 使用sql文件恢复数据库
    查看>>
    mysql 修改默认字符集为utf8
    查看>>
    Mysql 共享锁
    查看>>
    MySQL 内核深度优化
    查看>>
    mysql 内连接、自然连接、外连接的区别
    查看>>
    mysql 写入慢优化
    查看>>
    mysql 分组统计SQL语句
    查看>>