簡體   English   中英

在運行時將JsonString轉換為JavaObject

[英]JsonString to JavaObject at runtime

我正在嘗試在運行時將JSON字符串轉換為Java對象。 可能嗎?

  String className = errorInfo.getClassName(); String methodName = errorInfo.getMethodName(); String requestMessage = errorInfo.getMessage(); String reference3 = errorInfo.getReference3(); try { Class claz = Class.forName(className); Object obj = claz.newInstance(); Class[] parameterTypes = new Class[1]; parameterTypes[0] = Class.forName(reference3).getClass(); Method method = claz.getMethod(methodName, parameterTypes); method.invoke(obj, new ObjectMapper().readValue(requestMessage,<I have to pass here .class reference>>)); } catch(Exception ex) { } 

我犯了基本錯誤。 以下代碼為我工作:

    String className = errorInfo.getClassName();
    String methodName = errorInfo.getMethodName();
    String requestMessage = errorInfo.getMessage();
    String reference3 = errorInfo.getReference3();

    try {
        Class<?> claz = Class.forName(className);
        Object obj = claz.newInstance();
        Class[] parameterTypes = new Class[1];
        Class<?> parameter = Class.forName(reference3);
        parameterTypes[0] = parameter;
        Method method = claz.getMethod(methodName, parameterTypes);
        method.invoke(obj, new 
        ObjectMapper().readValue(requestMessage,parameter));

    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM