在Spring中使用Velocity进行视图渲染的时候需要注意一个路径的设置问题。Spring本身提供了一个用于对Velocity进行设置的类,我们做如下设置:

  1. <bean id="velocityConfig"class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
  2. <property name="configLocation" value="/WEB-INF/velocity.properties" />
  3. <property name="resourceLoaderPath" value="/WEB-INF/templates" />
  4. </bean>

使用configLocation属性设置了velocity配置文件的路径及文件名,而resourceLoaderPath设置了模板文件所在的位置。这里我们看到,所有的设置路径都是基于网站根目录的。

这个时候对于velocity.properties中用于设置宏文件的velocimacro.library选项而言,他所对应的目录就是前面resourceLoaderPath中设置的目录了,比如我们可以设置如下:

  1. velocimacro.library = macro.vm

并且对于模板文件中#parse指令所包含的文件也是基于resourceLoaderPath中所设置的目录。

如果我们将resourceLoaderPath设置为网站跟目录,而模板文件放在了/WEB-INF/template下,这个时候velocimacro.library和#parse指令所包含的文件路径就是基于网站根目录了,例如有个section.vm文件放在了/WEB-INF/template目录下,这个时候在模板文件中必须写成#parse("/WEB-INF/template/section.vm")才可以,可以看出这样非常的麻烦。

因此我们不能想当然的将resourceLoaderPath设置为网站的根目录,而是直接指向模板文件所在的目录。或许你认为我这么说有些可笑,但是有的时候我们往往在这些看似不经意的问题上浪费时间。

Spring+Velocity中模板路径的问题相关推荐

  1. 在Spring Boot中配置Thymeleaf的模板路径

    众所周知,Thymeleaf的模板文件默认是在项目文件夹的src\main\resources\templates目录下的.不过出于特殊需要,要修改其路径怎么办呢? 在我们的项目配置文件applica ...

  2. 在Spring MVC中使用Velocity

    在Spring MVC中使用Velocity – Part 1工程中配置velocity 目的 Spring MVC中结合velocity的配置和操作. 简介 我们要显示一个课程列表,需要如下的 Ja ...

  3. 如何把网上下载的前端页面在Spring Boot中跑起来(CSS,JavaScript,程序运行等路径设置)

    这个功能非常有用,估计99.99%的java web开发者都干过,本人是初学者,特写这个博客记录下! 方便本人以后查阅,方便以后进行投机取巧 这里使用thymeleaf模板引擎! 在网上下载了一个Bo ...

  4. spring boot中配置虚拟路径,用来映射显示图片

    增加配置,继承 WebMvcConfigurerAdapter,如下: package com.wm.mogu_picture.config;import org.springframework.be ...

  5. Django项目准备和配置(MVT图解、创建项目和应用、更换解释器、安装应用、本地化、模板路径、项目中匹配urls、应用中匹配urls.py、准备视图、开启服务器、修改DATABAS配置信息)

    Django模型主要包含: 模型配置 数据的增删改 增:book = BookInfo() book.save() 和BookInfo.objects.create() 删:book.delete() ...

  6. Spring MVC中获取当前项目的路径

    Spring MVC中获取当前项目的路径 在web.xml中加入以下内容 <!--获取项目路径--><context-param><param-name>webAp ...

  7. Spring Boot中使用模板引擎引用资源

    目录 概念 演示 概念 在Spring Boot中可以通过模板引擎去引用资源,如果项目改变了,也是可以跑的,不需要自己手动一个个去改链接. 演示 运行截图如下: 但修改properties文件: se ...

  8. java spring配置文件路径_java - 在spring b中从命令行设置活动配置文件和配置位置...

    java - 在spring b中从命令行设置活动配置文件和配置位置 我有一个春季启动应用程序. 我的应用程序中有三个配置文件 - > 开发,分期和生产. 所以我有3个文件 应用developm ...

  9. Spring Boot中使用模板引擎参数化传参数

    目录 理论 代码及演示 理论 在导航页里面,当点击某个栏目的时候,就得被激活,在Spring Boot中,一般把导航页做成片段的形式,这个片段是可以根据参数进行激活某一个栏目,如下的演示所示,通过三元 ...

最新文章

  1. 薪资被「倒挂」,别慌,咱们用实力说话
  2. matlab系统的根轨迹,实验五 利用MATLAB绘制系统根轨迹
  3. 部署kafka集群到服务器
  4. 在IOS开发中根据(id)sender获取UIButton的信息
  5. 强生进军医疗机器人、Deepmind利用深度学习算法检查乳腺癌X光,AI医疗的风口已到来?...
  6. Powershell管理系列(十一)Exchange完全访问权限邮箱的设置
  7. 循序渐进linux——基础知识、服务器搭建、系统管理、性能调优、集群应用_第四讲,Proxmox部署与应用...
  8. 什么是JNDI,SPI,CCI,LDAP和JCA?
  9. JQuery EasyUI入门
  10. 总奖金64万!含吸烟打电话检测、车道线识别等,2020中国华录杯·数据湖算法大赛火热进行中!...
  11. 手机锁屏js倒计时停止问题解决办法探索
  12. /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.12‘ not found解决办法
  13. 终极算法【4】——联结学派
  14. java+mysql 基于ssm205网上购物超市系统#毕业设计
  15. oeasy教您玩转linux010105详细手册man
  16. mscorsvw.exe关闭方法
  17. 数学漫游 - 向量投影和最小二乘法
  18. Centos桌面版无法打开Chrome浏览器
  19. Intel处理器分类规则
  20. 公司庆典活动策划方案怎么写?需要把握6个方面

热门文章

  1. kamctl start
  2. 提升 composer 的执行速读
  3. ubuntu安装时N卡黑屏处理
  4. 设计模式 — 创建型模式 — 原型模式
  5. Ansible — Modules
  6. Python 编程系列
  7. Linux 操作系统原理 — 内存 — 基于局部性原理实现的内/外存交换技术
  8. 用 Flask 来写个轻博客 (11) — M(V)C_创建视图函数
  9. 示波器探头使用注意事项,示波器探头的选择
  10. 一个简单自激振荡器电路分析