..

day20201112 - java 中使用脚本语言

 有一些易变的,不确定的业务逻辑,与其一遍遍的重写,可以考虑把那些逻辑的计算,写到脚本语言里面。

    @GetMapping("/test")
    public Object test() throws Exception {

        TBusOrderTwo or = new TBusOrderTwo();
        or.setId(1);
        or.setPhone("12333334444");
Bindings param
= new SimpleBindings(); param.put("a", 22222); param.put("b", JSON.toJSON(or).toString()); param.put("c", or);
ScriptEngineManager manager
= new ScriptEngineManager(); ScriptEngine javascript = manager.getEngineByExtension("js"); Object eval = javascript.eval(new FileReader(new File("C:/Users/XG002/Desktop/a.js")), param); System.out.println(eval); return eval; }

 

js脚本:

(function (a, b, c) {
  print("---------------------");
  print("c= " + c);
  print("c.id = " + c.id);
  print("c.getId()= " + c.getId());
  print("---------------------");
  return 1.5 + 2.51 + 0.0011;
})(a, b, c);

 

只需要修改js逻辑,就用重新修改java代码,就可以做到对业务逻辑的适应。

 

 

posted @ 2020-11-12 16:11  罗浩楠  阅读(117)  评论(0编辑  收藏  举报
..