본문 바로가기

Java/[패스트캠퍼스] 50일 포트폴리오 챌린지

[25일차] 10개 프로젝트로 완성하는 백엔드 웹개발(Java/Spring)

수강 강의명

회원 계정 도메인

① 기존 ERD(게시글, 댓글)에 회원 계정 도메인 설계를 반영한다.
     각 게시글과 댓글이 유저 계정을 인식하게 끔 연관 관계를 설정한다.
② 회원 계정 도메인을 구현한다.
③ 회원 계정 Repository를 생성한다.
④ data.sql : INSERT문을 통해 테스트용 회원 계정 데이터를 DB에 넣는다.
⑤ REST API 테스트 코드 : 회원 정보는 API로 노출하지 않기 위해 모든 http 요청에 대응하는 테스트를 작성한다.
    모든 http 메서드에 대해 404 not found가 발생하는지 확인한다.

 

로그인 페이지(Spring Security)

Spring Security가 자동으로 생성하는 로그인 페이지를 이용한다.

① 의존성을 추가한다.
    start.spring.io > Gradle Project(v) > ADD DEPENDENCIES... > 검색 : spring web, spring security, thymeleaf
    > EXPLORE > implementation : 복사 + 붙여넣기(security, thymeleaf-extras-springsecurity5 만)
    thymeleaf-extras-springsecurity5 : spring security와 thymeleaf를 함께 넣어야 만 추가되는 의존성
② Gradle의 변경 사항을 적용한 후 Application Server를 재 실행한다.
     Load Gradle Changes : [Ctrl + Shift + O]
     [Services] Application Server Reboot : [Ctrl + Shift + F10]
③ 로그인 기능을 구현하지 않은 상태이므로 SecurityConfig를 통해 모든 요청에 대해 인증이 열리도록 설정한다.
     https://spring.io/blog/2022/02/21/spring-security-without-the-websecurityconfigureradapter
     클래스 상속 방식(구) > 빈 컴포넌트 방식(현)
④ Application Server를 재실행한 후 localhost:8080/articles에 접근하여 로그인 화면이 뜨지 않는지 확인한다.
     Build Project : [Ctrl + F9]
     localhost:8080/articles
⑤ 인증과 관련된 테스트를 위해 인증 관련 컨트롤러 테스트 코드를 생성한다.
⑥ "[GET] 로그인 페이지 - 정상 호출" 테스트 코드를 작성한다.
     스프링 시큐리티가 자동으로 생성한 로그인 컨트롤러를 테스트 한다.
⑦ 전체 테스트 코드를 실행하여 문제없이 통과되는지 확인한다.
 

Spring Security without the WebSecurityConfigurerAdapter

In Spring Security 5.7.0-M2 we deprecated the WebSecurityConfigurerAdapter, as we encourage users to move towards a component-based security configuration. To assist with the transition to this new style of configuration, we have compiled a list of common

spring.io

 

수강 화면수강 화면
수강 화면

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.

https://bit.ly/43z0P6S

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

#패스트캠퍼스 #포트폴리오 #직장인자기계발 #환급챌린지 #포트폴리오챌린지 #패스트캠퍼스후기 #초격차패키지 #오공완