在Velocity中默认加载vm文件的类是FileResourceLoader,而这个类是用File来读取vm文件的。所以在不同的环境下,File的根目录是不一样的,如在eclipse项目中就是项目的文件夹为根目录 。
解决vm找不到的方法我知道的有这两种:
1. 设置把Velocity(RuntimeConstants)中的FILE_RESOURCE_LOADER_PATH对应的值设置为vm文件的绝对路径,如:properties.put(Velocity.FILE_RESOURCE_LOADER_PATH, "E:/project/velocity/vm/");
2. 一般vm文件可以放在src目录下,这样我们可以把默认加载vm文件类更改成ClasspathResourceLoader,ClasspathResourceLoader加载资源时是通过ClassLoader的getResourceAsStream方法。可以这样修改:properties.put("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");这样就可以直接加载classpath目录下的vm文件了。
分享到:
相关推荐
SpringBoot 2.x 版本对 Velocity 模板不支持的解决方案 随着 SpringBoot 的版本升级,Velocity 模板引擎不再被支持。从 SpringBoot 1.5.x 版本开始,Velocity 模板引擎的支持就被逐步删除,而在 2.x 版本中,...
4. **iBatis**:另一种ORM解决方案,iBatis强调SQL脚本的控制权,将数据库操作与业务逻辑解耦。虽然iBatis本身不直接支持Velocity,但在某些情况下,开发者可能会用Velocity来构建基于iBatis的动态页面。 【标签】...
无论是展示用户特定信息、促销商品列表还是复杂的报表数据,VTL都能提供灵活的解决方案,使得Web页面能够根据不同的用户或上下文环境呈现定制化的信息。 ##### 2. MVC模式支持 Velocity的架构设计遵循MVC(Model-...
首先,"unable to find resource 'hello.vm' in any resource loader"这个错误表明Velocity的ResourceLoader找不到名为`hello.vm`的模板文件。ResourceLoader是Velocity中负责加载模板的组件,它会按照预设的路径或...
- **解决方案**:可以通过以下两种方式解决该问题: - 将数组转换为`List`或其他集合类型,以便使用`#foreach`进行循环。 - 创建公共的Util类来辅助数组操作,例如使用Java反射技术来实现数组元素的索引访问。 ...
**Spring框架** 是一个全面的后端开发解决方案,它提供依赖注入(DI)和面向切面编程(AOP),用于管理对象的生命周期和行为。Spring的IoC容器使得开发者能够轻松地解耦组件,提高代码的可测试性和可维护性。此外,...
Velocity 将 Java 代码从 Web 页面中分离出来,确保了网站在长期运营过程中仍然易于维护,并且提供了不同于 JSP 和 PHP 的另一种解决方案。 #### 3. Velocity 可以做什么? ##### 3.1 MudStore 示例 假设你是一个...
13个VM文件和4个YAML文件的存在,为项目提供了模板化和配置化的解决方案。4个批处理文件和2个SQL文件的存在,则表明该项目在系统管理和数据库操作方面提供了即插即用的工具。2个属性文件和1个Git忽略文件的存在,则...
基于Java和Shell语言的舆情后端系统设计源码,涉及到了727个文件,其中包括Java源文件、XML配置文件、VM模板文件、SQL数据库脚本、Shell脚本、属性文件、YAML配置文件以及文档和授权文件等。这样的文件结构表明了该...
VM文件可能是Velocity模板文件,用于在后端处理和渲染前端页面。YAML文件则可能用于配置项目构建工具Maven或Spring Boot的配置文件,如application.yml。批处理文件和属性文件可能用于自动化任务和配置属性信息。SQL...
吉音分组器导表设计源码项目是一个利用现代网页...这个吉音分组器导表设计源码项目通过多种文件类型的协同工作,实现了吉音分组器的开发,涵盖了从后端数据处理到前端用户交互的各个方面,提供了完整且专业的解决方案。
该系统是一个全面的教育管理解决方案,能够大幅度提升教育机构在教务管理方面的效率和质量。其主要特点和功能包括课程安排、学籍管理、成绩处理、考试安排、选课指导和教学质量评估等。 系统源码包含了多达360个...
系统中还包含8个VM文件,这些是Velocity模板文件,它们主要用于生成动态网页内容。Velocity模板语言(VTL)是Apache软件基金会的一个项目,它允许用户通过使用简单的模板语言来引用服务器端的Java代码,这样可以将...
这套基于Java技术的进销存系统设计源码为现代企业管理提供了一个高效、稳定且易于扩展的解决方案。其系统化的文件结构和模块化的代码设计不仅方便了开发人员进行开发和维护,也为最终用户提供了便利的操作界面和流畅...
Spring框架提供了强大的视图解析能力,允许开发者集成多种视图技术,提供更灵活的解决方案。Spring MVC通过`ViewResolver`接口来解析请求到相应的视图,开发者可以自定义视图解析器或者使用内置的解析器,比如`...
其次,VM文件,也就是Velocity模板文件,它们通常用于定义动态生成的文本内容的结构。在本项目中,这些模板文件将作为代码生成的蓝图,通过与Java源文件的配合,可以根据用户的输入和设置动态生成代码。这类文件的...
VM模板文件26个,它们是velocity模板引擎的模板文件,主要用于服务端页面渲染,以及动态生成页面内容。 系统设计精巧,功能完善,能够满足数据资产的管理与登记需求。例如,在数据资产登记方面,系统可以对数据进行...
VM模板文件可能用于_velocity_模板引擎,以动态生成文本输出;YAML配置文件则是Spring Boot和Spring Cloud常用的一种配置格式,它简洁清晰,易于阅读;备份文件提供了源码的安全保障,以防数据丢失;SQL脚本文件则...
总结来说,这个解决方案利用了Velocity模板引擎的强大能力,结合Java后端处理,实现了UI查询结果到自定义格式PDF报表的转化。用户友好的界面与高效的后台处理相结合,提供了高效的数据导出功能。在实际开发中,这种...
它不仅仅提供了一个资源管理的平台,更通过其灵活的架构、细致的功能划分和高效的资源优化,为企业的资源管理提供了一种有效的解决方案。无论是在企业资源管理、云计算服务还是数据中心管理等领域,该系统都具有广阔...