Igo*_*pov 0 java metaprogramming
伙计们!我需要创建某种元语言,我可以将其嵌入XML中,然后用Java进行解析.例如:
<code>
[if value1>value2 then "Hello, Bob!" else "Hello, Jack"]
</code>
Run Code Online (Sandbox Code Playgroud)
要么
<code>
[if value1+2>value2 return true]
</code>
Run Code Online (Sandbox Code Playgroud)
我需要实现条件语句,算术.
我应该从哪里开始寻找建议?
Java有一个内置的JavaScript解释器:
ScriptEngine jsEngine = new ScriptEngineManager().getEngineByName("JavaScript");
jsEngine.put("value1", 8);
jsEngine.put("value2", 9);
String script = "if(value1 + 2 > value2) {'Foo'} else {'Bar'}";
final Object result = jsEngine.eval(script);
System.out.println(result); //yields "Foo" String
Run Code Online (Sandbox Code Playgroud)
当然,你可以自由地都加载脚本从你需要的地方,并与任何上下文提供它(value
并value2
在这个例子中)你想要的.
另请参阅Java平台的脚本文章.
归档时间: |
|
查看次数: |
3554 次 |
最近记录: |