2015-09-10 57 views
2

我在我的項目中有struts2-json-plugin lib,我想用JSONWriter來獲取JSON字符串,並把它放到JavaScript中僅用於一個參數(不是JSON結果的全部Action )只有一個消氣:struts2-json-plugin JSONWriter Injection in Action

public String getCarTypesJson() throws JSONException { 
     JSONWriter writer = new JSONWriter(); 
     return writer.write(carTypes); 
} 

它的工作,但我可以跳過的new JSONWriter()創作,在我從Struts2的行動注入JSONWriter對象?

回答

3

Struts2 json plugin沒有聲明JSONWriter作爲注入式bean。並且在插件JSONWriter內部的使用與您現在所使用的完全相同,每次需要序列化某些內容時都使用by creating an instance

當然,您可以在某個DI容器中自己創建bean,並將其注入到行動中。如果您決定這樣做,請確保您聲明JSONWriter bean爲prototype

+1

是的,你是對的。如果插件庫中的序列化方法每次都創建它的新實例,那麼也許JSONWriter對象並不那麼重。我在另一個項目中使用json-simple lib和JSONObject注入spring bean(默認單例作用域)。 – sytolk