第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將Java對象(bean)轉換為鍵值對(反之亦然)?

如何將Java對象(bean)轉換為鍵值對(反之亦然)?

慕田峪4524236 2019-12-16 10:31:58
說我有一個非常簡單的java對象,它僅具有一些getXXX和setXXX屬性。該對象僅用于處理值,基本上是記錄或類型安全(和性能)映射。我經常需要將此對象轉換為鍵值對(字符串或類型安全)或從鍵值對轉換為該對象。除了反射或手動編寫代碼以進行此轉換之外,實現此目的的最佳方法是什么?一個示例可能是通過jms發(fā)送此對象,而不使用ObjectMessage類型(或將傳入消息轉換為正確的對象)。如何將Java對象(bean)轉換為鍵值對(反之亦然)?
查看完整描述

4 回答

?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

總是有apache commons beanutils,但是當然它在后臺使用了反射


查看完整回答
反對 回復 2019-12-16
?
慕容森

TA貢獻1853條經驗 獲得超18個贊

許多潛在的解決方案,但讓我們再添加一個。使用Jackson(JSON處理庫)進行“無json”轉換,例如:


ObjectMapper m = new ObjectMapper();

Map<String,Object> props = m.convertValue(myBean, Map.class);

MyBean anotherBean = m.convertValue(props, MyBean.class);

(此博客條目有更多示例)


您基本上可以轉換任何兼容的類型:兼容的意思是,如果您確實從類型轉換為JSON,并且從該JSON轉換為結果類型,則條目將匹配(如果配置正確,也可以忽略無法識別的類型)。


對于可能發(fā)生的情況,包括Maps,Lists,數組,基元和類bean POJO,效果很好。


查看完整回答
反對 回復 2019-12-16
?
慕哥9229398

TA貢獻1877條經驗 獲得超6個贊

這是一種將Java對象轉換為Map的方法


public static Map<String, Object> ConvertObjectToMap(Object obj) throws 

    IllegalAccessException, 

    IllegalArgumentException, 

    InvocationTargetException {

        Class<?> pomclass = obj.getClass();

        pomclass = obj.getClass();

        Method[] methods = obj.getClass().getMethods();



        Map<String, Object> map = new HashMap<String, Object>();

        for (Method m : methods) {

           if (m.getName().startsWith("get") && !m.getName().startsWith("getClass")) {

              Object value = (Object) m.invoke(obj);

              map.put(m.getName().substring(3), (Object) value);

           }

        }

    return map;

}

這是怎么稱呼的


   Test test = new Test()

   Map<String, Object> map = ConvertObjectToMap(test);


查看完整回答
反對 回復 2019-12-16
  • 4 回答
  • 0 關注
  • 1752 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號