Model w Spring boot

0

Witam

Piszę aplikację i się zastanawiam czy robię to poprawnie a mianowicie, czy do każdego mapowania potrzeba dawać oddzielny model czy jest jakieś rozwiązanie (np. bean), który by zastępował kilka linijek kodu np takiego:
//kod pochodzi z controllera

...
User user = (User) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
		com.model.User loggedInUser = userDao.findByUsername(user.getUsername());
..

jest to kod który używam w paru miejscach i pytanie jak to zastąpić?

0

Wydziel kod do klasy, metoda statyczna getCurrentUser i działa ;) Ewentualnie jak security to można w preauthorize dać principal i też pójdzie :)

0

Spróbuj może
w konstruktorze

0

WUT? Dlaczego po prostu nie zostawisz wstrzykiwania obiektu Principal springowi?


@GetMapping
public void get(Principal principal) {...}

Tylko musisz wziąć jedną rzecz pod uwagę, jeżeli udostępnisz metodę dla niezautentykowanych użytkowników to Principal nie będzie obiektem User.

1 użytkowników online, w tym zalogowanych: 0, gości: 1