There are two ways to save preferences in portlet development[in liferay],
Through liferay specific way, which uses liferay-portlet.xml entry . cant be managed with spring.
JSR-286[portal agnostic], portlet EDIT mode.
While developing portlet with Spring MVC framework, its advisable to use portlet EDIT mode.
In Spring MVC portlet framework, you can map portlet requests by portlet mode.
For Example: Create controller class as below which will map to EDIT mode requests.
@Controller
@RequestMapping("EDIT")
public class PreferencesController
with two methods, one method with annotation @RenderMapping, responsible for view and other method with annotation @ActionMapping/@RequestMapping responsible for storing preferences.
Hope this would help.