[스프링부트]_게시판_6

Kingyj·2024년 12월 30일
post-thumbnail

JSB게시판 프로젝트 게시판만들기_6

정리 할 내용

맵핑 정리
진행 과정 정리
오류/애러 정리
해결 과정 정리


지난 진행 과정

  1. 네비게이션 바 추가
  2. 페이지 표기
  3. 게시물 번호 지정/시간순 배열
  4. 답변 개수 표기

이번포스팅 진행 과정

  1. 스프링부트 시큐리티 사용하기
  2. 회원가입 기능 구현
  3. 로그인 / 로그아웃 기능 구현

1.스프링부트 시큐리티 사용하기

회원가입을 통해 회원 정보를 서버에 저장하고 로그인과 로그아웃 기능을 만들어보자. 생각만해도 현재의 레벨에서는 어떻게 진행해야되는지 방향조차 잡기 쉽지 않다.
스프링부트를 이용하는 이유이기도 하다.
build.gradle에 위의 implementation을 추가한다.
스프링부트에서 지원하는 스프링 시큐리티이다.

위의 두가지 코드를 입력하고 서버를 열고 도메인에 접속해본다.

자동으로 login으로 연결되며 해당 페이지가 표기된다.

@Configuration

[ 설명 ]

  • Spring Framework에서 사용되는 애너테이션 중 하나로, 해당 클래스가 스프링의 설정 클래스임을 나타냅니다. 이 애너테이션을 사용하면 XML 설정 파일을 대체하거나 보완하여 Java 기반으로 애플리케이션의 설정을 정의할 수 있습니다.
  • @Bean 애너테이션과 함께 사용됩니다.
  • 메서드에서 생성된 객체가 스프링 컨테이너에 의해 관리되는 빈으로 등록됩니다.

[ 역할 ]

  • 이 클래스는 애플리케이션 컨텍스트 또는 스프링 IoC 컨테이너를 구성하는 정보를 포함합니다.

  1. 회원가입 기능 구현

User 폴더를 만들고 이 안에 회원가입과 로그인 / 로그아웃에 관련된 코드들을 넣어 줄 것이다.

코드를 넣고 서버를 열어보면 회원가입기능이 네비게이션바에 생성된다. 클릭해보자.
회원가입 페이지로 넘어가게 되며, 정상적으로 작동하는지 회원가입을 진행해보겠다.

빈칸을 채우지 않거나, 입력 값이 다를 경우에는 위의 사진과 같은 오류표시가 정상적으로 되고 있다.

비밀번호와 비밀번호 확인이 다를 경우 위의 오류 메세지가 표기된다.
오류 없이 정상적으로 모든 빈칸을 채우게되면, 회원가입이 완료된다.
가입된 회원 정보는 h2-console 서버에 저장이 된다.
SELECT * FROM SITE_USER을 입력하여 확인해보자.
방금 가입한 회원의 정보가 표기되며, 암호는 담당자도 확인하면 안되므로, 암호화되어 저장된다.


  1. 로그인 / 로그아웃 기능 구현

이제 로그인 버튼을 누르면 로그인 페이지로 이동된다.
역시 서버에 저장되지 않은 아이디를 입력하거나, 다른 비밀번호를 입력하면 로그인이 되지 않는다.

회원가입을 통해 정상적으로 등록된 아이디와 암호로 로그인을 하면, 자동으로 메인 도메인페이지로 이동되고 네비게이션바에 로그인 아이콘이 로그아웃으로 바뀐다.


이렇게 회원가입과 로그인 / 로그아웃 기능을 구현했다.
하지만 아직 로그인 여부와 상관없이 글 작성이 가능하고
요즘에 쓰이는 게시판에 비해서는 기능이 조금 아쉽다.
그래서 다음 포스팅에는 최종적으로 여러 기능을 추가해보겠다.

0개의 댓글