在Java中将开关大小写转换为注释

在Java中将开关大小写转换为注释,java,annotations,Java,Annotations,我有一个输入json 示例JSON1: {id:1, type: 1, name: abc, phone: 11111111} 示例JSON2: {id: 1, type: 2, email: abc.xyzzzz@vmdkn.com} 因此,当前的流程是,这个json将被解析,我们将检查json.getType() 基于所有json中都会出现的相同参数,我们将该json重定向到一个特定的类,并从json中提取参数,并在文件中执行所需的操作 要求:在外部文件(属性文件)中处理类型到类的映射,

我有一个输入json

示例JSON1:

{id:1, type: 1, name: abc, phone: 11111111}
示例JSON2:

{id: 1, type: 2, email: abc.xyzzzz@vmdkn.com}
因此,当前的流程是,这个json将被解析,我们将检查json.getType()

基于所有json中都会出现的相同参数,我们将该json重定向到一个特定的类,并从json中提取参数,并在文件中执行所需的操作

要求:在外部文件(属性文件)中处理类型到类的映射,并将事件直接重定向到该类。。。。 这可以通过反射来实现吗


是否可以使用java注释实现上述功能(我不熟悉使用java注释)

请告诉我们
type
Key实际上包含什么?它是一个json类型标志还是任何其他信息?在实际场景中,它将是一个带有一些示例的字符串:在案例1中,它将作为类型:“phonenumberupdate”在案例2中:类型:“emailupdate”我认为获取所有密钥的长度并将其传递到开关中,开关将相应地执行我们的方法。。这可能是我通过查看您的问题可以找到的方法。它已经以这种方式出现了…我们可以直接使用注释(运行时)将json映射到该文件而不是Switchcase吗?编写两个pojo类,其中包含与
json
键同名的变量。并使用objectmapper。。
switch(json.getType())

case "phonenumberupdate":
  PhoneNumberUpdate c1=new PhoneNumberUpdate();
  c1.doSomething();
  break;
case "emailupdate":
  EmailUpdate c2=new EmailUpdate();
  c2.doSomething();
  break;