Spring MVC/ Przekazanie ID użytkownika

0

Hej
Znacie jakiś bardziej elegancki sposób aby przekazać ID?

Chodzi mi o metodę POST.
Aby zmodyfikować użytkownika to muszę też przesłać jego Id.

Nie do końca mi się podoba to jak to zrobiłem, można to zrobić jakoś bardziej elegancko?
Klasa "User" rozszerza interfejs UserDetails. User ma też relację OneToOne/OneToMany ale to nie jest raczej istotne

    @GetMapping("/update")
    public String updateAccountForm(Model model, @AuthenticationPrincipal User user) {

        model.addAttribute("updateUser", userService.findById(user.getUserId()));

        return "customer/update-customer";
    }

    @PostMapping("/update")
    public String updateAccountProcess(@ModelAttribute("updateUser") User user, @AuthenticationPrincipal User user_id) {

        user.setUserId(user_id.getUserId());
        userService.saveUser(user);

        return "redirect:/customer/settings";
    }
0

Normalnie zgodnie z jakimś rigczem i REST to powinien być endpoint /user/update/{ID}. Ale biorąc pod uwagę ze mamy tu opcje full encja na twarz i pchasz gdzie obiekt JPA jest jednocześnie Principalem i DTO i w ogóle wszystkim, to te endpointy są twoim najmniejszym problemem...

0

Skupiasz się na nie tej części Springa co powinieneś.

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