使用Spring Security和Web MVC保存屬於經過身份驗證的用戶的對象時,遵循的最佳模式是什麼?Spring Security和Web MVC:如何保存屬於用戶的數據?
我所遇到的所有教程都展示瞭如何驗證登錄用戶,而且就他們而言,他們沒有解釋如何使用多個用戶及其數據。例如:登錄的用戶正在保存新的博客文章。這裏是控制器的樣子:
@PostMapping("/blog/save")
public String blogSavePost(@AuthenticationPrincipal CurrentUser currentUser, BlogForm blogForm) {
blogService.save(currentUser, blogForm);
return "redirect:/blog";
}
如若currentUser
傳遞給blogService
其中服務然後設置它的實體Blog
(然後傳遞給BlogRepository
保存)?這似乎有點繁瑣,必須通過此保存或編輯..
什麼時候編輯一個對象 - 因爲被保存的對象的ID傳遞給控制器(作爲參數的一部分表單對象),它可以被用戶修改。服務層應該如何驗證要保存的數據是否屬於用戶?我估計,有使用Spring Security來處理這一個簡單的方法,我只是還沒有碰到過的是什麼完全到來..