Java 의 TemplateLibrary. FreeMarker 와 함께 현업에서 자바 웹 프로그래밍시에 많이 이용.

JakartaStruts - VelocityTools 조합으로 많이 이용됨.

http://jakarta.apache.org/velocity/
download : http://jakarta.apache.org/site/binindex.cgi#velocity

Very Simple Example

~cpp 
// SpikeVelocity.java 

import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.Properties;

import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;

public class SpikeVelocity {
	public static void main(String[] args) throws Exception {
		Properties prop = new Properties();

		// Velocity 한글 문제 처리 : properties 셋팅 필요.
		prop.setProperty("input.encoding" ,"euc-kr");
		prop.setProperty("output.encoding" ,"euc-kr");
		
		Velocity.init(prop); // properties 화일(velocity.properties) 를 선택할 수도 있음.
                  
                  // 해당 모델에 데이터를 채우는 부분
		VelocityContext con = new VelocityContext();
		con.put("data1", "데이터 첫번째");
 
                  // 데이터 형틀 지정.
		Template tmpl = Velocity.getTemplate("./tmpl/simple.vm");
		
                  // 최종 출력 : System.out 에 출력함.
		Writer out = new OutputStreamWriter(System.out);
		tmpl.merge(con, out);
		out.flush();
	}
}

simple.vm 화일 - template.
~cpp 
#set ($name = "hahaha")

$name:$name$name

한글 테스트.

$data1

Plugin


DreamWeaver Plugin - http://java.techedu.net/phpBB2/viewtopic.php?t=138 - 아아.. 이런 문서 먼저 만들어주신 분에게 참 감사하다는. :)

StrutsAndVelocityIntegration


삽질 조심 : Velocity 에서의 연산

Velocity 에서 연산을 할 때에는 반드시 각 연산 당 스페이스를 주어야 한다!!!
~cpp 
#set ($prevNo = $pageNo - 1)  (O)
#set ($prevNo=$pageNo-1)  (X)
Retrieved from http://wiki.zeropage.org/wiki.php/Velocity
last modified 2021-02-07 05:28:21