BeanUtils 踩坑指北

2022-07-27 03:51:11 字數 891 閱讀 8136

開發中有一步要傳送 http 請求,引數為 map ,原本是有乙個 bean 的, 於是就需要轉換一下,

spring springframework 裡有 beanutils,包含乙個廣為人知的 copyproperties 方法,於是點開這個類看了並沒有轉為map的,

雖然寫乙個轉換方法也不算困難,不過由於時間關係,如果有現成的就直接導包用嘛,

然後搜尋了一下,發現 org.apache.commons.beanutils.beanutils 有乙個 populate(bean, map),的方法,就拿過來用了,

後來測試時候發現map是空的,就很懵逼,然後看了一下方法描述

@param properties map keyed by property name, with the corresponding (string or string) value(s) to be set

就是說先要把 bean 的屬性設為 map 的 key 才行,有 key 才會有值,而 new 的 map 當然是空的,結果還是空的。(⊙﹏⊙) 想不通開發者這麼做的用意。

無奈正打算重寫之際,發現它的第乙個方法(因為是d開頭)describe 引數為 bean ,return map,跑了一下測試列印出來是這樣子的

多乙個 class 屬性,然後 map.remove("class") ,就得到了想要的結果

下面是得空補上的手動實現方法

peopledata people = new peopledata();

mapparams = new hashmap();

try

}} catch (exception e)

Selenium踩坑指北

最近在翻selenium的官方文件,禿然發現了乙份官方的selenium踩坑指南,不敢獨享,拿出來給大家分享一下。眾所周知,我們應該把合適的工具用在合適的場景,這跟殺雞的時候不需要用到宰牛刀是一樣的道理。selenium比較好的使用場景是驗收測試 回歸測試 tdd bdd,一些同學喜歡把seleni...

systemtap embedded C 踩坑筆記

官方文件 systemtap的embedded c中,不能 include 也不能用printf和print。那怎麼列印呢?用stap printf。用法與printf一樣。還可以訪問cript中的全域性變數。官方文件中的示例 global var global var2 100 function ...

Aggregation MongoDB踩坑記錄

對某些篩選條件進行分頁查詢,開始每一頁的有效data都不足pagesize,最後發現,aggregation 的pipeline是有先後順序的。錯誤 agg aggregation.newaggregation aggregation.skip curpage 1 pagesize aggregat...