Я довольно новичок в разработке портлета, и мне интересно, как сохранить настройки для каждого пользователя. Я использую сервер WebSphere 8.5 Portal Server, Spring 4.3.2 и RAD v9.5.Как использовать и сохранять пользовательские настройки
На данный момент я использую PortletPreferences
для хранения данных в моей Controller.java
так:
@ActionMapping(params = "action=saveUserPref")
public void saveUserSettings(ActionRequest req, @RequestParam("radio") String color) throws ReadOnlyException, ValidatorException, IOException {
PortletPreferences pref = req.getPreferences();
pref.setValue(accountService.getUsername()+"_fontcolor", color);
pref.store();
}
И получить предпочтения в моем .jsp
так:
<div style="color:<%=renderRequest.getPreferences().getValue(renderRequest.getPortletSession().getAttribute("username")+"_fontcolor",
"black")%>;">
Я прочитал в некоторых сообщениях, что этот метод работает, но это не самый чистый способ сохранить пользовательские настройки, потому что, если у вас есть большое количество пользователей, это станет очень медленным.
Прямо сейчас я ищу быстрый способ сохранить и получить настройки даже с большим количеством пользователей. Каковы наилучшие решения в реальном мире?