Java动态方法创建

我有以下JSON格式的信息。

 [
  {
    "name": "A","value": {
      "isValueApplicable": "true"
    }
  },{
    "name": "B","parameters": [
      {
        "name": "x","isMandatory": "true"
      },{
        "name": "y","isMandatory": "true"
      }
    ]
  },{
    "name": "C","isMandatory": "false"
      }
    ]
  }
]

我想要的是,使用以下方法创建一个类:

public Structure geta (String value) {
}

public Structure getB (String xValue,String yValue) {
}

public Structure getc (String xValue) {
}

public Structure getc (String xValue,String yValue) {
}

这里重要的是,这些方法应基于JSON中给出的信息动态创建。因此,仅适用于A值。对于B,x和y都是必需的。但是对于C,只有x值是强制性的,用户可以为y提供值,因此有两种不同的方法。

问:在Java中是否可以在读取JSON之后在编译时生成方法,就像参数是强制性的一样,我将使用许多参数创建方法。如果该值不适用,那么我将创建不带任何参数的方法。
xiaozhu262401295 回答:Java动态方法创建

是的,可以使用Reflection in Java完成,也可以使用javaassitcglib

,

是的,您可以即时生成Java字节码。 CGLib(Github link here)是做到这一点的一种选择。

或者您可以使用类似Jackson的东西从Json生成Java源代码,然后进行编译。 Here's one example.

我肯定还有更多方法,但是是的,肯定有可能。

当然,您显示的Json已损坏,因此只会产生解析器错误。

本文链接:https://www.f2er.com/3082526.html

大家都在问