Velocity Replacement


package com.wx.test;

import java.io.ByteArrayInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.StringWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.VelocityEngine;

/**
 * @Class name:	VelocityTest.java
 *
 * Short description on the purpose of the program.
 *
 * @author:		wangxiang
 * @modified:	Oct 31, 2012
 *
 */

public class VelocityTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		VelocityEngine engine = new VelocityEngine();
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put("ccRecipientsName", "aaaaaaa");
		paramMap.put("subject", "bbbbbbb");
		paramMap.put("minutesPurposeCode", "ccccccc");
		List<VelocityTestTO> list = new ArrayList<VelocityTestTO>();
		VelocityTestTO to = new VelocityTestTO();
		to.setId("1");
		to.setName("name1");
		to.setAge("25");
		list.add(to);
		to = new VelocityTestTO();
		to.setId("2");
		to.setName("name2");
		to.setAge("23");
		list.add(to);
		to = new VelocityTestTO();
		to.setId("3");
		to.setName("name3");
		to.setAge("26");
		list.add(to);
		paramMap.put("pList", list);
		VelocityContext context = new VelocityContext(paramMap);
		StringWriter writer = new StringWriter();
		engine.evaluate(context, writer, "", getTestHtml());
//		System.out.println(writer.toString());
		InputStream is = new ByteArrayInputStream(writer.toString().getBytes());
		byte[] byteA = ReportGeneratePD4ML.generatePDFReportByPd4ml(is, "", "", null, null);
		try {
			FileOutputStream fos = new FileOutputStream("D:/CaseConnect/Template Engine/Velocity/test.pdf");
			fos.write(byteA);
			fos.flush();
			fos.close();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
	private static String getTestHtml() {
		return "<html>"+
				"<body>"+
				"<table>"+
				"<tr>"+
				"		<td>CC:</td> "+
				"		<td>${ccRecipientsName}</td>    "+
				"	</tr>  "+
				"	<tr>     "+
				"		<td>subject:</td>"+
				"		<td>${subject}</td> "+
				"	</tr> "+
				"	<tr>  "+
				"		<td>minutesPurposeCode:</td>    "+
				"		<td>${minutesPurposeCode}</td>  "+
				"	</tr>"+
				"</table><br/>"+
				"<table>"+
				"#foreach ( $p in $pList )"+
				"<tr>"+
				"		<td>Id:</td> "+
				"		<td>$p.id</td>    "+
				"		<td>Name:</td>"+
				"		<td>$p.name</td> "+
				"		<td>Age:</td>    "+
				"		<td>$p.age</td>  "+
				"	</tr>"+
				"#end"+
				"</table>"+
				"</body>"+
				"</html>";
	}

}

猜你喜欢

转载自wangxiang286.iteye.com/blog/1710915
今日推荐