[Spring Blog]7. 게시글 수정하기

Mar 15, 2024
[Spring Blog]7. 게시글 수정하기
notion image
notion image
notion image
notion image
@PostMapping("/user/updateForm") public String userupdateForm(int id, UserRequest.UpdateDTO requestDTO) { // 인증 체크 User sessionUser = (User) session.getAttribute("sessionUser"); if (sessionUser == null) { return "redirect:/loginForm"; } // update board_tb set password = ? userRepository.userUpdate(requestDTO, sessionUser.getId()); return "user/updateForm"; }
@PostMapping("/user/update") public String userUpdate(UserRequest.UpdateDTO updateDTO) { // 세션에서 사용자 정보 가져오기 User sessionUser = (User) session.getAttribute("sessionUser"); // 세션에 저장된 사용자 정보가 없을 경우 로그인 페이지로 리다이렉트 if (sessionUser == null) { return "redirect:/loginForm"; } // 새로운 패스워드 가져오기 String newPassword = updateDTO.getPassword(); // 패스워드가 비어있으면 다시 수정 폼으로 리다이렉트 if (newPassword == null || newPassword.isEmpty()) { return "redirect:/user/updateForm"; } userRepository.updatePassword(sessionUser.getId(), newPassword); return "redirect:/user/info"; } @GetMapping("/user/updateForm") public String userUpdateForm(int id, UserRequest.UpdateDTO requestDTO) { User sessionUser = (User) session.getAttribute("sessionUser"); if (sessionUser == null) { return "redirect:/loginForm"; } // 사용자 정보 조회 User user = userRepository.update(sessionUser.getId()); // 패스워드를 제외한 다른 필드들은 읽기 전용으로 설정 model.addAttribute("username", user.getUsername()); model.addAttribute("email", user.getEmail()); // UpdateDTO를 사용하여 패스워드를 입력 받을 수 있도록 모델에 추가 model.addAttribute("updateDTO", new UpdateDTO()); return "user/updateForm"; }
Share article

Essential IT