java在語言的動態性方便不是很靈活,如果你想快速增加或改變一些方法,那么只能通過反射機制,並且參數傳遞的格式很嚴格。
相比之下,基於groovy可以快速寫出一些自定義方法,並能和java很好結合,類似javascript在java中應用。
環境:
導入groovy-all-2.1.6.jar
maven:
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>2.1.6</version>
</dependency>
編寫自定義的方法
class Java2Script extends Script{
public static String getString(String string){
return string;
}
public static int getInt(){
return 1;
}
@Override
public Object run() {
return null;
}
public static void main(String[] args){
CompilerConfiguration cfg = new CompilerConfiguration();
cfg.setScriptBaseClass(Java2Script.class.getName());
GroovyShell shell = new GroovyShell(cfg);
Script script = shell.parse("getString(\"hello world\")");
System.out.println(script.run());
}
}
這樣就非常方便,可以任意寫一些自定義方法,然后調用的時候通過字符串的方式調用,並且可以傳遞一些基礎類型參數。
// groovy語言在java中的其他嵌入用法
http://shift-alt-ctrl.iteye.com/blog/1938238
