본문 바로가기
BindingResult 와 rejectValue 스프링 회원가입 유효성 검사 스프링 프레임워크로 사용자 회원가입과 로그인을 컨트롤할 controller 코드중에서 사용한 주요 메소드를 간략히 정리했다. @PostMapping("/signup") // Post: 회원가입 진행 public String signup(@Valid UserCreateForm userCreateForm, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return "signup_form"; } if (!userCreateForm.getPassword1().equals(userCreateForm.getPassword2())) { bindingResult.rejectValue("password2", "passwordInCorrect", "📌패스.. 2022. 11. 3.
java: constructor () is already defined in class lombok 오류 해결 constructor () is already defined in class 스프링에서 자꾸 클래스명 2개가 똑같은게 있다는 오류가떴는데 절때 똑같은 메소드명이나 클래스명은 없었고.. 계속 구글링하다가 찾아냈다. @RequiredArgsConstructor @AllArgsConstructor 를 같이 사용하면 에러가 발 생 한다. 해당 사이트를 참고해서 해결했다. https://stackoverflow.com/questions/66301736/java-error-constructor-is-already-defined-in-class-using-lombok 2022. 11. 2.
Spring Security H2 데이터 베이스 사용시 프레임 오류 스프링 시큐리티를 사용하면 자동으로 CSRF 토큰이 생성된다. 측정 페이지 url은 스프링 시큐리티를 해제할 수 있지만, 그 상태로 H2에 접속이 불가하다. H2 콘솔은 스프링과 상관없는 일반 애플리케이션이기 때문에 예외처리를 해주어야한다. 문제화면: @Configuration @EnableWebSecurity public class SecurityConfig { @Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { http.authorizeRequests().antMatchers("/**").permitAll() .and() .csrf().ignoringAntMatchers("/h2-console/**") ;.. 2022. 10. 27.
페이징 구현하기 JPA 환경 구축시 설치했던 JPA 관련 라이브러리에 이미 페이징을 위한 패키지가 있다. org.springframework.data.domain.Page org.springframework.data.domain.PageRequest org.springframework.data.domain.Pageable 1) 리포지터리에 findAll 메서드를 추가한다. public interface QuestionRepository extends JpaRepository { Page findAll(Pageable pageable); } 이 때 임포트가 domain.Page이어야 한다. import org.springframework.data.domain.Page; import org.springframework.da.. 2022. 10. 27.
Spring Boot Validation // null로 등록 불가능하게 하는 방법 Spring boot로 게시판이나 댓글을 구현할 때 빈 값으로 입력 못하게 하는 여러 방법은 여러가지가 있지만 form을 사용해서 입력값을 체크하는 방법이 있다. Spring Boot Validation 라이브러리 추가 dependencies { implementation 'org.springframework.boot:spring-boot-starter-validation' } Spring Boot Validation을 설치하면 아래와 같은 애너테이션을 사용할 수 있다. @Size 문자 길이를 제한한다. @NotNull Null을 허용하지 않는다. @NotEmpty Null 또는 빈 문자열("")을 허용하지 않는다. @Past 과거 날짜만 가능 @Future 미래 날짜만 가능 @FutureOrPresen.. 2022. 10. 27.