Spring MVC 整合 Velocity

根据网上资料整理

发布于:2016-10-31

Apache Velocity是一款基于Java的模板引擎,允许使用模版语言来引用Java对象,与jsp类似。

直接介绍Spring MVC 4 与Velocity整合。

一、添加Maven依赖


    org.apache.velocity
    velocity
    1.7


    org.apache.velocity
    velocity-tools
    2.0


    org.springframework
    spring-context-support
    4.1.5.RELEASE

二、增加Spring配置

在Spring mvc的配置文件中增加视图解析器与velocity配置


    
    
    
    
    
    
    
    
    
    
    



 

    
        utf-8
        utf-8
        true
        true 
        true
        0 
        
        
        0
    


完成上面两步后就可以创建模版文件进行开发了。

Spring mvc 返回模版视图示例:

@RequestMapping(value = "/test")
public String test(Model model,HttpSession httpSession) {

    model.addAttribute("name","测试");
    
    // 在页面上用$userName取值
    httpSession.setAttribute("userName", "test");

    // 模版文件路径templates/other/test.vm
    return "other/test";
}

具体的模版语言语法参考:
http://velocity.apache.org/engine/1.7/user-guide.html

三、自定义工具类

velocity虽然内置一些函数,但有时还是难以满足我们的需求或者比较繁琐。下面介绍如何创建自定义工具类并在页面使用它们。

1、编写自定义工具类(以判断字符串是否为空或者null举例)

import com.google.common.base.Strings;

public class VelocityStringUtils {

    /**
     * 判断字符串是否是null或者空字符串
     *
     */
    public boolean isNullOrEmpty(String s) {
        return Strings.isNullOrEmpty(s);
    }

}

2、创建自定义工具类配置文件



    
        
        StringUtils
        application
        
        com.xxx.utils.VelocityStringUtils
    

3、修改Spring配置文件


    
    
    
    
    

    
    

4、使用自定义工具类

当有用户的昵称时显示欢迎信息。

#if(!$StringUtils.isNullOrEmpty($user.name))
欢迎您:$user.name
#end

你可能感兴趣的:(Spring MVC 整合 Velocity)