首页>代码>java Servlet + apache Velocity简单入门实例>/VelocityDemo/src/action/TestVelocity.java
package action;

import java.io.BufferedWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Properties;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.exception.ParseErrorException;
import org.apache.velocity.exception.ResourceNotFoundException;

public class TestVelocity extends HttpServlet {

	private static final long serialVersionUID = 1L;

	@Override
	public void init() throws ServletException {
		super.init();
	}

	@Override
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doPost(request, response);
	}

	@Override
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// 载入配置文件
		Properties properties = new Properties();
		properties.setProperty("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");
		Velocity.init(properties);

		// 取得VelocityContext作用域
		VelocityContext context = new VelocityContext();
		// 将list放入context作用域
		context.put("list", getNames());
		// 将city放入context作用域
		context.put("city", "ShangHai");

		Template template = null;
		String templateFile = "example.vm";

		try {
			// 载入模板文件
			template = Velocity.getTemplate(templateFile, "UTF-8");
		} catch (ResourceNotFoundException rnfe) {
			System.out.println("Example : error : cannot find template " + templateFile);
		} catch (ParseErrorException pee) {
			System.out.println("Example : Syntax error in template " + templateFile + ":" + pee);
		}
		
		BufferedWriter writer = new BufferedWriter(response.getWriter());

		if (template != null)
			template.merge(context, writer);
		writer.flush();
		writer.close();
	}

	private ArrayList<String> getNames() {
		ArrayList<String> list = new ArrayList<>();

		list.add("Oracle");
		list.add("MySQL");
		list.add("SQLServer");

		return list;
	}
}
最近下载更多
酋酋就是我  LV2 2019年8月26日
hefenyuan91  LV11 2018年9月30日
boNIuniu  LV11 2018年7月24日
dagf113225  LV68 2018年1月3日
archer5016  LV1 2017年9月17日
houziwt  LV2 2017年2月9日
swellz  LV1 2017年1月22日
liuguiliangboa  LV13 2016年11月23日
日久生情  LV19 2016年2月24日
figue  LV1 2015年10月20日
最近浏览更多
dy123123  LV8 2022年1月1日
德莱文  LV15 2021年7月3日
1072737451  LV4 2021年1月5日
ningmeng2020  LV2 2020年10月28日
wweifly 2020年6月15日
暂无贡献等级
回锅肉好吃  LV3 2020年6月4日
yangguang  LV8 2020年5月21日
yishicheng  LV8 2020年4月22日
酋酋就是我  LV2 2019年8月26日
人间蒸发  LV23 2019年6月13日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友