`
kim_miao
  • 浏览: 190643 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Spring MVC中VM页面使用自定义宏

阅读更多
        在使用vm做为视图展示时,Spring框架本身提供了一些定义好的宏让开发者重用.如在spring.vm文件中,如页面表单绑定常用的宏:
#macro( springBind $path )
    #if("$!springHtmlEscape" != "")
        #set( $status = $springMacroRequestContext.getBindStatus($path, $springHtmlEscape) )
    #else
        #set( $status = $springMacroRequestContext.getBindStatus($path) )
    #end
#end

        而在实际项目中,开发者要定义很多自己的宏以使一些功能得到重用.如何让spring加载自定的宏文件呢.在以下配置中:
<bean id="velocityConfigurer"
	class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
	<property name="resourceLoaderPath">
		<value>/WEB-INF/vm/</value>
	</property>
	<property name="configLocation" value="/WEB-INF/velocity.properties" /> 
</bean>

该属性configLocation设置了velocity属性配置文件的路径及文件名,.要想使用自定的宏,只需在velocity.properties文件中指定如下两项的值.
velocimacro.library = macros-default.vm
velocimacro.library.autoreload = true
而在这个文件macros-default.vm中,我们自定义的一些宏都可以放入其中.
分享到:
评论
1 楼 D04540214 2011-09-22  
macros-default.vm文件放在哪个目录下?

相关推荐

    spring3 多视图集成

    Spring MVC通过`ViewResolver`接口来解析请求到相应的视图,开发者可以自定义视图解析器或者使用内置的解析器,比如`InternalResourceViewResolver`用于JSP,`FreemarkerViewResolver`用于FreeMarker,以及`...

    92.Spring Boot使用模板velocity【从零开始学Spring Boot】

    要在Spring Boot项目中使用Velocity,首先需要在`pom.xml`中添加依赖。Spring Boot并没有默认包含Velocity,所以我们需要手动引入: ```xml &lt;groupId&gt;org.springframework.boot &lt;artifactId&gt;spring-boot-...

    velocity入门使用教程

    首先,创建一个模板文件(.vm),在这个文件中使用VTL语法定义输出格式。然后,在Java代码中初始化Velocity引擎,并通过Velocity引擎读取模板文件,再将Java对象数据传入模板,最终合并生成最终的文本输出。 具体...

    Spring3.0.1+Mybatis3.0.5+Struts2.2.3.1+velocity1.7+DWZ

    在这个项目中,Velocity模板(VM)用于渲染DWZ框架的前端页面。 **DWZ (EasyUI for jQuery)**: DWZ是一个开源的jQuery UI框架,专为Web开发提供一系列易于使用的组件,如表单验证、对话框、下拉菜单、分页等。DWZ...

    springlearning:Spring源码学习仓库

    Spring 框架是 Java 开发领域中广泛使用的轻量级框架,它的核心特性包括依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)。这个"Springlearning:Spring源码学习仓库"显然是...

    Velocity简单案例

    在Java工程中,Velocity通常被用作Web应用的视图层技术,与Spring MVC、Struts等框架结合使用。在这个"Velocity简单案例"中,我们可以推测其包含了一个基础的Velocity模板使用示例,可能包括以下几个关键知识点: 1...

    SpringMvc

    在这个框架中,开发者可以使用 Model-View-Controller(MVC)设计模式来分离业务逻辑、数据模型和用户界面。 **1. MVC 设计模式** MVC 是一种软件设计模式,它将应用程序分为三个核心组件:模型(Model)、视图...

    详解直接访问WEB-INF目录下的JSP页面的方法

    在Spring MVC中,使用Controller来处理HTTP请求,并返回ModelAndView对象。ModelAndView对象包含了视图(View)和模型(Model)的信息,模型用于传递数据,视图则代表JSP页面。 在上述例子中,创建了一个名为...

    使用SpringBoot前的项目准备有哪些?.docx

    - 编写代码,利用Spring Boot的特性如自动配置、Spring MVC、数据访问等进行开发。 5. **其他准备**: - 确保网络通畅,因为很多依赖库需要从远程仓库下载。 - 学习和理解Spring Boot的基本概念和常用功能,如...

    Velocity 模版

    Velocity 被广泛应用于 Web 开发中,尤其是在 Apache Struts 和 Spring MVC 等框架中作为视图层的解决方案。 **1. Velocity 的工作原理** Velocity 的核心概念是模板(Template)和上下文(Context)。模板是静态...

    velocity 简单实例

    这个简单的实例将会帮助我们理解如何在实际项目中使用 Velocity。 首先,我们需要了解 Velocity 的基本概念。Velocity 模板语言(VTL)是 Velocity 的核心,它允许我们在模板中插入变量和控制结构,如条件语句和...

    Velocity Demo

    2. **上下文(Context)**: 上下文是 Velocity 的核心概念,它是一个键值对的容器,用于存放要在模板中使用的 Java 对象。开发者可以在控制器层将数据放入 Context,然后在视图层通过模板引用这些数据。 3. **模板...

    Velocity本地化应用举例

    **步骤3:在Velocity模板中使用本地化** 在Velocity模板文件(如`index.vm`)中,你可以通过工具类访问本地化消息: ```html $resource.getMessage('title') $resource.getMessage('helloMessage') ``` ...

    Velocity

    Velocity被广泛应用于Web应用开发中,特别是作为MVC模式的一部分,用于生成HTML、XML或其他格式的输出。 在深入 Velocity 的核心概念之前,我们先了解一下它的基本原理。Velocity 将模板语言(如 `.vm` 文件)与...

    webwork源码底层实现

    WebWork是一个古老的Java Web开发框架,它在早期的MVC(模型-视图-控制器)架构中占有重要地位,为开发者提供了丰富的功能和强大的动作映射能力。在深入理解WebWork源码之前,我们首先需要了解一些基本概念。 1. **...

    velocity-1.6.1.tar.gz

    Velocity被设计成一个轻量级的、快速的模板语言,它允许开发者将呈现逻辑从业务逻辑和视图层分离出来,实现MVC(Model-View-Controller)架构中的View部分。在Velocity中,开发者可以使用简单的模板语言来插入Java...

    Maven权威指南 很精典的学习教程,比ANT更好用

    本例中所用的技术 7.2. simple-parent项目 7.3. simple-model模块 7.4. simple-weather模块 7.5. simple-persist模块 7.6. simple-webapp模块 7.7. 运行这个Web应用 7.8. simple-command模块 7.9. 运行这...

    高清彩版 Idea使用教程

    - **spring-mvc.xml**:Spring MVC配置文件。 **8.7 项目目录结构** - 规划合理的项目目录结构。 #### 九、常用技巧&问题 - **创建自定义快捷列表**:提高开发效率。 - **Tomcat部署失败**:排查部署失败的原因...

    webx学习总结.pdf

    - **扩展验证**:提供系统默认验证和自定义验证扩展机制。 - **资源统一访问**:简化资源管理,增强框架的灵活性。 - **数据存储支持**:默认采用iBatis,支持多种数据存储组件。 - **Command模式**:降低Web层...

Global site tag (gtag.js) - Google Analytics