This is a servlet based web application.
서블릿과 JSP를 이용해서 자바 기반의 웹 에플리케이션 개발을 학습하기 위해서 만들었습니다.
Java를 통해 웹 개발을 할 수 있게 되었고 MVC model2 방식을 이용하여 프론트엔트 파트와 백엔드 파트를 분리했습니다.
트랜잭션을 적용했습니다.
커넥션 풀을 적용했습니다.
Docker compose를 이용해 톰켓 서버 서비스 컨테이너와 데이터베이스 서비스 컨테이너를 통합 관리하고, Docker hub에 이미지를 업로드하여 Docker engine을 사용하는 os에서 빠르게 배포 가능하게 만들었습니다.
언어: Java, JSP, javascript
IDE: IntelliJ
프로토콜: HTTP
서버 호스팅: AWS EC2(Ubuntu)
웹 서버: tomcat Docker container
데이터베이스: MySQL Docker container
라이브러리: JSTL, tomcat DBCP, JDBC, JQuery, Ajax, Java mail
다른 사람들과 소통할 수 있는 커뮤니티 사이트 입니다.
-회원가입시 항목의 유효성을 ajax를 통해 실시간으로 검사하여 사용자에게 피드백을 제공합니다.
-비밀번호는 SHA-256 알고리즘으로 암호화하여 데이터베이스에 저장됩니다.
-회원가입을 한 후에 인증 이메일이 발송되며 이메일에 첨부된 링크로 접속을 하면 인증이 완료되고 자동으로 로그인이 됩니다.
-홈페이지의 루트 페이지로 모든 사용자들의 게시물이 보입니다.
-게시물 더 보기 버튼을 누르면 ajax를 이용해 바로 다음 게시물들을 표시합니다.
-게시물에 좋아요를 누를 수 있습니다.
-이미지를 최대 6장까지 업로드할 수 있습니다. 선택한 후에 마음에 안 드는 이미지가 있으면 다른 이미지로 바꿀 수 있습니다.
-이미지 수정 시에는 기존 이미지를 모두 가져오며 수정하고 싶은 이미지만 선택해서 삭제한 후 다른 이미지로 바꿀 수 있습니다.
-게시물 삭제가 가능합니다.
-게시물에 댓글을 추가, 수정, 삭제할 수 있습니다.
-게시물에 좋아요를 누를 수 있습니다.
-좋아요 리스트에서 좋아요를 누른 사용자를 확인할 수 있고 그 사용자의 페이지에 방문할 수 있습니다.
-다른 사용자들을 팔로우할 수 있습니다.
-마이 페이지에서 팔로워, 팔로잉 수를 확인할 수 있으며 팔로워, 팔로잉 창에서 누가 자신을 팔로우하는지, 자신이 누굴 팔로잉하는지 확인할 수 있습니다.
-프로필 사진, 이름, 닉네임, 이메일, 자기 소개를 수정할 수 있습니다.
-비밀번호 변경이 가능합니다.
-회원 탈퇴가 가능합니다.