회원가입 API를 구현하는 도중 Controller 코드에서 오류 발생
package com.example.qnb.login.controller;
import com.example.qnb.login.dto.RegisterRequest;
import com.example.qnb.login.entity.User;
import com.example.qnb.login.repository.UserRepository;
import org.springframework.http.ResponseEntity;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/api/auth")
public class AuthController {
private final UserRepository userRepository;
private final PasswordEncoder passwordEncoder;
public AuthController(UserRepository userRepository, PasswordEncoder passwordEncoder) {
this.userRepository = userRepository;
this.passwordEncoder = passwordEncoder;
}
@PostMapping("/register")
public ResponseEntity<?> register(@RequestBody RegisterRequest request) {
// 이메일 중복 체크
if (userRepository.findByUserEmail(request.getUserEmail()).isPresent()) {
return ResponseEntity.badRequest().body("이미 사용 중인 이메일입니다.");
}
// 비밀번호 암호화
String encodedPassword = passwordEncoder.encode(request.getUserPassword());
// 유저 생성 및 저장
User user = new User();
user.setUserEmail(request.getUserEmail());
user.setUserPassword(encodedPassword);
userRepository.save(user);
return ResponseEntity.ok("회원가입이 완료되었습니다.");
}
}

: 다 이렇게 현재 각 파일에서 메소드를 찾을 수 없다고 나옴
: Lombok의 @Getter/@Setter가 적용 여부 다시 확인
→ 이 방법은 아님(Rebuild를 해도 해결 안됨)
: 메소드 직접 작성
public class RegisterRequest {
private String userEmail;
private String userPassword;
public String getUserEmail() {
return userEmail;
}
public void setUserEmail(String userEmail) {
this.userEmail = userEmail;
}
public String getUserPassword() {
return userPassword;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}
}
public class User {
private Integer userId;
private String userEmail;
private String userPassword;
public String getUserEmail() {
return userEmail;
}
public void setUserEmail(String userEmail) {
this.userEmail = userEmail;
}
public String getUserPassword() {
return userPassword;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}
}
→ 해결됨! 사실 이런 오류에서는 메소드 직접 생성해주는 것이 확실한 방안임