JDK 6 - 03: Scripting : ScriptVars

0

Written on 오전 2:09 by 강여사(J.Y.Kang)

스크립트 변수(Script Variables)

여러분의 자바 어플리케이션에 스크립트 엔진과 스크립트를 embed 했을 때, 스크립트에 전역변수(global variables)로써 어플리케이션 객체를 원할 때가 있다. 이번 예제에서는 스크립트에 전역변수로써 어플리케이션 객체를 제시하는 방법에 대해 알아보자. 우선, 어플리케이션에 java.io.File 을 생성하고, 같은 이름의 “file”을 전역 변수로 처리할 수 있다. 스크립트는 변수(“file”)에 접근 가능하다 – 예를 들어, public 메소드 호출이 가능하다. 자바 객체, 메소드, 그리고 필드를 액세스하는 문법은 스크립트 언어에 의해 달라지는데, 자바스크립트는 대부분 “natural” 자바와 비슷한 문법을 가지고 있다.

==================================================================
package test;

import java.io.File;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;

public class ScriptVars {

public static void main(String[] args) throws Exception {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("JavaScript");

File f = new File("test.txt");
// expose File object as variable to script
engine.put("file", f);

// evaluate a script string. The script accesses "file"
// variable and calls method on it
engine.eval("print(file.getAbsolutePath())");
}
}
==================================================================

If you enjoyed this post Subscribe to our feed


No Comment

댓글 쓰기