velocity 实例

通过velocity对字符串进行格式化输出

package cn.com.ld.test.velocity;

import java.io.StringWriter;
import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;

import junit.framework.Assert;

import org.apache.commons.lang.StringEscapeUtils;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.context.Context;
import org.junit.Before;
import org.junit.Test;

public class VelocityTest{

private final static String TEMPLATE = "src/cn/com/ld/test/velocity/template.properties" ;

private Velocity v = null ;
@Before
public void init(){
v = new Velocity();
Properties p = new Properties();
v.init(TEMPLATE);
}

@Test
public void testA(){
System.out.println("testa0:"+StringEscapeUtils.unescapeJava(String.valueOf(v.getProperty("name"))));
//Escape.getText("---------------"+(String) v.getProperty("name")) ;
}


@Test
public void testEvaluate(){
Context context = new VelocityContext();
context.put("name", "java小生");
StringWriter sw = new StringWriter();
Assert.assertEquals(true, (v.evaluate(context, sw, "", "hello,$name")));
System.out.println(sw.toString());

}

@Test
public void testMergeUnContainKey() throws UnsupportedEncodingException{
Map<String,Object> context = new HashMap<String,Object>();
context.put("name", "java小生");
VelocityContext vt = new VelocityContext(context);
StringWriter sw = new StringWriter();
Template t = Velocity.getTemplate(TEMPLATE);
t.merge(vt, sw);
System.out.println(StringEscapeUtils.unescapeJava(sw.toString()));
}
}



2:properties文件如下

username : $name
name=java\u5c0f\u751f
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值