代碼:
<result-types>
<result-type name="json" class="org.apache.struts2.json.JSONResult"/>
</result-types>
預設並沒有任何調整,這樣的狀況下會有兩個問題:
<result-type name="json" class="org.apache.struts2.json.JSONResult"/>
</result-types>
- 若model有繼承其它class,那些parent class attribute並不會被serialize。
- 若attribute為null,也會被serialize出去,造成無謂的網路傳輸量。
所以我們必須多加兩個設定:
- set ignoreHierarchy = false, default true.
- set excludeNullProperties = true, default false.
最終設定如下:
代碼:
<result-types>
<result-type name="json" class="org.apache.struts2.json.JSONResult">
<param name="ignoreHierarchy">false</param>
<param name="excludeNullProperties">true</param>
</result-type>
</result-types>
將它放到自己的struts.xml就可以了。
<result-type name="json" class="org.apache.struts2.json.JSONResult">
<param name="ignoreHierarchy">false</param>
<param name="excludeNullProperties">true</param>
</result-type>
</result-types>