⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vtlservlet.java

📁 《基于Eclipse的开源框架技术与实战》[第11章]随书源码
💻 JAVA
字号:
package com.free.vtl.web;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Properties;

import javax.servlet.ServletConfig;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.velocity.Template;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.context.Context;
import org.apache.velocity.servlet.VelocityServlet;

/**
 * <p>Title: Eclipse Plugin Development</p>
 * <p>Description: Free download</p>
 * <p>Copyright: Copyright (c) 2006</p>
 * <p>Company: Free</p>
 * @author gan.shu.man
 * @version 1.0
 */

public class VTLServlet extends VelocityServlet {
	
	/**
	 * 加载模板配置
	 * */
	protected Properties loadConfiguration(ServletConfig config)
			throws IOException, FileNotFoundException {
		Properties p = new Properties();
		String path = config.getServletContext().getRealPath("/");

		//如果路径为空,则打印出相印信息,并把路径设为”/“
		if (path == null) {
			System.out.println(" VTLServlet.loadConfiguration() "+
					           ": unable to get servlet context root");
			path = "/";
		}

		//设置模板的属性
		p.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH, path);
		p.setProperty("runtime.log", path + "velocity.log");
		return p;
	}

	/**
	 * 处理模板请求
	 * */
	public Template handleRequest(HttpServletRequest request,
			HttpServletResponse response, Context ctx) {

		//给模板date变量赋值
		ctx.put("date", new java.util.Date());
 
		Template tpl = null;
		try {
			//加载模板文件
			tpl = getTemplate("showDate.jsp");
		} catch (Exception ex) {
			System.out.println("VTLServlet : error when get template");
			ex.printStackTrace();
		}

		//返回模板
		return tpl;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -