# Java 新手日常踩坑總集 - 學習J筆記 在開發的時候難免會遇到一些小坑,但是又不想要去記得太多繁瑣的背景故事,所以打算記錄一篇總集篇,每個小問題都不會占用到太多篇幅,還可以當作寫筆記的動力(長篇筆記寫起來真的很累,動輒 30min-90min XDD ## SpringBoot web server 接不到 request 最近在開發 SpringBoot web server 有遇到我打了 request 進來,Body 裡面帶了四個資料,但是只接到三個。 後來發現想要很確定能夠接到完整 Json 格式的資料的話,原先的建構要稍做修改(意味著其實不做修改也可能可以運作正常) 這是通常原本的 RequestBody 建構模式: ```java= public class body{ private String a; private String b; public body(){ //建構子 } public setA(String a){ this.a = a; } public setB(String b){ this.b = b; } public getA(){ return this.a; } public getB(){ return this.b; } } ``` 只要多加註解如下即可: ```java= public class body{ @JsonProperty(value = "a") private String a; @JsonProperty(value = "b") private String b; public body(){ //建構子 } public setA(String a){ this.a = a; } public setB(String b){ this.b = b; } public getA(){ return this.a; } public getB(){ return this.b; } } ``` ## Android Activity method use on Fragment 所有在 Activity 可以用的 method 到 Fragment 就變成 Can not be resolved,在方法前面 getActivity()就好 In Activity ```java= WindowManager windowManager = getWindowManager(); ``` In Fragment ```java= WindowManager windowManager = getActivity().getWindowManager(); ``` 但是在 gradle 5.0 版本之後,他會開始"誠摯的希望(用warning強迫)"開發者改為使用 requireActivity() 可以看一下他的細節 > Return the FragmentActivity this fragment is currently associated with. May return null if the fragment is associated with a Context instead 使用 getActivity() 是有可能會因為生命週期規劃的不好而返回 Null 的,為了要避免返回 null 的狀況,Android 27.0.1 新增了 requireActivity() 這個 @NonNull 的方法,雖然現在 getActivity() 沒有被官方直接~~DISS~~,但是 requireActivity() 這麼香為何不用呢? ###### tags: `JAVA` `學習計畫` `web server` `Android`