0
在我的代碼中我有4個方法,所有的方法都調用單一方法。爲了避免重複的方法調用,我創建了一個全局變量並將方法結果存儲在該變量中。我被告知這不是一個好主意。我們有其他的選擇嗎?通過創建全局變量來減少方法調用
public void initializePortletData(PortletRequest request, PortletResponse portletResponse, Model model) {
model.addAttribute(TABLE, test(request));
}
public void getInvitedUsers(PortletRequest request, PortletResponse response, Model model) {
model.addAttribute(TABLE, test(request));
}
@Override
public Map getJSParams(PortletRequest request, ModelAndView modelAndView) {
Map<String, Object> model = new HashMap<>();
model.put(TABLE, test(request));
return model;
}
我這樣做了,但我被告知它會導致併發問題 –
如果變量是從多個線程訪問並且未處理併發,則保存變量中的任何信息都可能會導致併發問題。您可以保持原樣,或以某種方式解決併發問題。看看Java中的synchonize方法。 – Bear