2014-03-13 67 views
0

在我的項目中,我使用了spring安全性。要獲取當前用戶名,我訪問SpringContextHolder向Spring MVC Session添加新屬性

UserDetails principal = (UserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); 
username = principal.getUsername() 

使用org.springframework.security.core.userdetails.UserDetails對象我只能檢索喜歡的用戶名,密碼,角色等有限的信息如果我想找回用戶名?我是否需要每次都進行數據庫調用以獲取與用戶名相對應的更多用戶詳細信息?我無法將屬性設置爲會話對象嗎?在大多數帖子中,解決方案是使用ModelAndView對象提出的。但在我的情況下,我不需要視圖層的SessionAttributes,但也需要在業務邏輯層。

主要是我想以某種方式持久保存UserID和ClientID以隨時隨地訪問。

回答