當前位置: 妍妍網 > 碼農

今日程式碼大賞 | 還在自己轉 URL?

2024-03-08碼農

不知道大家有沒有遇到過這樣一種場景?

需要將一個 Bean 轉成能夠拼接在 url 後面的 query 參數。

自己來做的話需要一個一個 get 從物件中獲取值,然後拼接或者透過反射實作。

但其實 Hutool 裏提供了現成的工具方法,如下:

CommentAddRequest request = new CommentAddRequest();
request.setPostId(1L);
request.setContent("hh");
request.setType("sdf");
request.setContentType(0);

// 將物件轉換為 Map
Map<String, Object> paramMap = BeanUtil.beanToMap(request);
// 將 Map 轉換為 URL Query 參數
// postId=1&content=hh&type=sdf&contentType=0
String queryString = HttpUtil.toParams(paramMap);

當然還有其逆向方法:將 query 參數轉成 map

Map<String, String> map = HttpUtil.decodeParamMap("postId=1&content=hh&type=sdf&contentType=0", StandardCharsets.UTF_8);
CommentAddRequest commentAddRequest = BeanUtil.mapToBean(map, CommentAddRequest. classtruenull);

完整程式碼片段來源於程式碼小抄,歡迎點選進入小程式閱讀!

線上存取:https://www.codecopy.cn/post/4ohv35