Несколько объектов в Model Spring

есть страница http://localhost:8080/classifier. где в верхнем меню выводится информация об авторизованном пользователе, есть кнопка "Добавить" нажав на которую открывается форма добавления новой записи в БД в таблицу Lu, будут еще другие формы, которые будут использоваться для добавления записей в таблицу.

Хотел бы уточнить можно ли в контроллере в методе для открытия страницы http://localhost:8080/classifier в модель передавать и объект, откуда можно получить данные пользователя и объект, который будем добавлять в таблицу в БД или так делать нельзя и есть другое решение?

Ниже привел класс контроллера. Проходил несколько курсов по Spring и везде показывалось что для добавления новой записи или редактирования нужно было перейти на другую страницу и там реализовать форму добавления/изменения, а мне хочется реализовать это во всплывающих окнах, поэтому решил в методе "showClassifierPage" через модель передать несколько объектов на страницу.

@Controller
@RequestMapping("/classifier")
public class ClassifierController {

    private final LuServices luServices;
    private final ModelMapper modelMapper;

    @Autowired
    public ClassifierController(LuServices luServices, ModelMapper modelMapper) {
        this.luServices = luServices;
        this.modelMapper = modelMapper;
    }

    @GetMapping()
    public String showClassifierPage(Model model) {
        Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
        PersonDetails personDetails = (PersonDetails) authentication.getPrincipal();
        model.addAttribute("personDetails", personDetails);

        model.addAttribute("luDTO", luServices.findByTagWith0());

        model.addAttribute("newLuDTO", new LuDTO());

        return "lu/index";
    }

    @PostMapping()
    public String createLuWith0(@ModelAttribute("newLuDTO") LuDTO luDTO, BindingResult bindingResult) {

        if (bindingResult.hasErrors()) {
            return "lu/index";
        } else {
            luServices.addNewLu(convertToLu(luDTO));
            return "redirect:/classifier";
        }

    }

    private Lu convertToLu(LuDTO luDTO) {
        return modelMapper.map(luDTO, Lu.class);
    }
}

Ответы (0 шт):