인텔리제이 아이디어(IntelliJ IDEA) 커뮤니티 버전, Spring JPA 및 롬복(Lombok) 사용을 전제로 합니다.

  • 스프링 부트 버전: 2.3.1
  • Gradle 버전: 6.4.1

출처: 스프링 부트와 AWS로 혼자 구현하는 웹 서비스


개요

이 예제는 예전에 만들었던 Spring Boot 예제: 초간단 게시판 과 비슷한 예제인데, 이클립스 대신 인텔리제이 커뮤니티 버전을 바탕으로 이전에 사용하지 않았던 JUnit 단위 테스트, JPA, Lombok 등을 사용하였고, 아마존 웹 서비스Travis CI라는 자동 배포 서비스를 이용해 외부 인터넷 상에서 접속할 수 있도록 하였습니다.

과정의 대부분은 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 (이동욱 저)를 참조하였고, 스프링, Gradle 버전은 책에서 설명한 버전보다 최신 버전을 적용하였습니다.

OAuth 2.0을 적용해 게시판은 구글 로그인네이버 아이디로 로그인 API를 사용하며, 로그인한 사람만 이용할 수 있습니다. 게시판 특징은 다음과 같습니다.

  • 로그인이 되어있지 않다면 게시판의 글 목록만 보여주고, 내용은 볼 수 없게 한다.
  • 게시글의 수정, 삭제 기능은 해당 글을 작성한 사용자만 접근할 수 있도록 한다.

 

제작 시기

2020.7.11 ~ 2020.7.16

 

프로젝트 구조

 

코드 저장소 (GitHub)

https://github.com/ayaysir/awsboard

 

접속 주소

http://awsboard.yoonbumtae.com:9090/

사이트는 AWS 프리티어 기간이 지나 폐쇄했습니다.

아래 유튜브 영상으로 서비스 당시 모습을 볼 수 있습니다.

 

동작 내용

메인 화면

 

구글 계정으로 로그인한 경우 (초기 디자인)

 

글쓰기 화면

 

새로운 글 목록 출력

 

새로운 글 읽기 페이지, 내가 쓴 글인 경우 [수정], [삭제] 버튼 표시됨

내가 쓴 글이 아닌 경우, 글 읽기만 가능하고 수정, 삭제 버튼은 활성화되지 않음

 

네이버로 로그인한 경우

 

웹 페이지 주소를 적으면 자동으로 링크를 걸어주는 기능

 

공지사항

 

유튜브 주소를 적으면 자동으로 플레이어를 embed 하는 기능

 

페이지 내비게이션 기능

문의 | 코멘트 또는 yoonbumtae@gmail.com




0개의 댓글

답글 남기기

Avatar placeholder

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다