我已經在struts工作了很長一段時間了,但從來沒有想過真棒「json」響應類型。如何控制我的數據對象的哪些屬性被序列化爲Struts 2中的JSON響應?
我有一大堆我想要返回給客戶端的對象。我只在UI上使用這些字段的一個子集(通常是'displayName's')。
有沒有辦法限制被序列化爲JSON的字段返回給客戶端?
我能想到的一個顯而易見的方法是創建一個包含字段子集的視圖對象。請在此建議最佳做法。
我已經在struts工作了很長一段時間了,但從來沒有想過真棒「json」響應類型。如何控制我的數據對象的哪些屬性被序列化爲Struts 2中的JSON響應?
我有一大堆我想要返回給客戶端的對象。我只在UI上使用這些字段的一個子集(通常是'displayName's')。
有沒有辦法限制被序列化爲JSON的字段返回給客戶端?
我能想到的一個顯而易見的方法是創建一個包含字段子集的視圖對象。請在此建議最佳做法。
你可以使用json插件的exclude屬性來排除你不想序列化的屬性。
<interceptor-ref name="json">
<param name="enableSMD">true</param>
<param name="excludeProperties">
login.password,
studentList.*\.sin
</param>
</interceptor-ref>
欲瞭解更多詳情,請參閱json-plugin
Umesh製作,感謝快速反應。我正在尋找的是某種註解方法。但是,上述解決方案也適用於此目的。在接受之前,我會等待更多答案。再次感謝! – Gopal
@Gopal使用「json」結果類型時,沒有基於註解的Struts 2方法。您可以使用GSON,序列化爲流,並使用Struts 2的「流」響應,儘管流式序列化操作對我來說感覺很奇怪 - 沒有考慮到這一點,但可能。 –
在我的實踐,我發現用JSON對象打的最簡單的方法是GSON。良好的文檔和直觀的使用。在很多情況下幫助我。
使用GSON很容易解決您的問題。
https://sites.google.com/site/gson/gson-user-guide#TOC-Goals-for-Gson
是你[與註解方法Struts2的JSON]看着@什麼(http://stackoverflow.com/a/12274582/1085285) –