2026 PROJECT / 위치·생활

WeMeet

각자의 출발지에서 모두에게 공평한 중간 만남 장소를 찾는 서비스

개발자 김현규공개일 2026. 06. 22.영상 5:22
Spring BootJavaJavaScriptMariaDBRedisAWSNginxThymeleafJPAJWT
재생이 어려운 경우 원본 영상을 확인하세요.YouTube에서 보기 (새 탭)

ABOUT THE PROJECT

프로젝트 소개

WeMeet은 여러 사용자의 출발 위치를 기반으로 모두에게 공평한 중간 만남 장소를 추천하는 위치 기반 약속 장소 추천 웹 서비스입니다.

사용자는 출발지 주소를 입력하여 모임에 참여할 수 있으며, 시스템은 각 참여자의 위치 정보를 수집하여 중간 지점을 계산합니다. 계산된 중간 지점을 기준으로 네이버 지도 API와 네이버 지역 검색 API를 활용하여 카페, 맛집, 놀이, 문화, 운동 등 다양한 만남 장소를 추천합니다.

사용자는 상세 검색 기능을 통해 원하는 장소 유형이나 키워드를 선택할 수 있으며, 추천 결과는 지도와 목록 형태로 제공됩니다. 추천 장소 선택 시 위치 정보, 주소, 카테고리, 이동 시간 등의 상세 정보를 확인할 수 있습니다.

서비스는 회원가입, 로그인, 마이페이지 기능을 제공하며, 이메일 인증을 통한 회원가입 검증 기능을 구현하였습니다. 또한 JWT(JSON Web Token) 기반 자동 로그인 기능을 적용하여 사용자의 로그인 편의성을 향상시켰습니다. 비밀번호는 BCrypt를 사용하여 암호화하여 저장하였으며, 사용자 인증 및 권한 관리를 안전하게 처리하였습니다.

백엔드에서는 Spring Boot 기반 MVC 구조를 적용하였으며, Controller, Service, Repository 계층을 분리하여 유지보수성과 확장성을 고려하였습니다. 예외 상황에 대해서는 공통 예외 처리 구조를 적용하여 일관된 사용자 경험을 제공하도록 구성하였습니다.

데이터 저장소로는 MariaDB를 사용하여 회원 정보, 친구 관계, 모임 정보, 검색 이력 및 모임 장소 정보를 관리하였으며, Redis를 활용하여 JWT Refresh Token 및 추천 결과 캐시 데이터를 관리하였습니다.

배포 환경은 AWS EC2 환경에 구축하였으며, Nginx를 이용한 리버스 프록시 및 HTTPS 환경을 적용하였습니다. 또한 카페24 도메인을 연동하여 실제 웹 서비스 형태로 운영할 수 있도록 구성하였습니다.

사용 기술

Spring BootJavaJavaScriptMariaDBRedisAWSNginxThymeleafJPAJWT
YouTube 원본 프로젝트 설명
❍ 개발자 : 김현규 ❍ 제목 : WeMeet ❍ 설명 : WeMeet은 여러 사용자의 출발 위치를 기반으로 모두에게 공평한 중간 만남 장소를 추천하는 위치 기반 약속 장소 추천 웹 서비스입니다. 사용자는 출발지 주소를 입력하여 모임에 참여할 수 있으며, 시스템은 각 참여자의 위치 정보를 수집하여 중간 지점을 계산합니다. 계산된 중간 지점을 기준으로 네이버 지도 API와 네이버 지역 검색 API를 활용하여 카페, 맛집, 놀이, 문화, 운동 등 다양한 만남 장소를 추천합니다. 사용자는 상세 검색 기능을 통해 원하는 장소 유형이나 키워드를 선택할 수 있으며, 추천 결과는 지도와 목록 형태로 제공됩니다. 추천 장소 선택 시 위치 정보, 주소, 카테고리, 이동 시간 등의 상세 정보를 확인할 수 있습니다. 서비스는 회원가입, 로그인, 마이페이지 기능을 제공하며, 이메일 인증을 통한 회원가입 검증 기능을 구현하였습니다. 또한 JWT(JSON Web Token) 기반 자동 로그인 기능을 적용하여 사용자의 로그인 편의성을 향상시켰습니다. 비밀번호는 BCrypt를 사용하여 암호화하여 저장하였으며, 사용자 인증 및 권한 관리를 안전하게 처리하였습니다. 백엔드에서는 Spring Boot 기반 MVC 구조를 적용하였으며, Controller, Service, Repository 계층을 분리하여 유지보수성과 확장성을 고려하였습니다. 예외 상황에 대해서는 공통 예외 처리 구조를 적용하여 일관된 사용자 경험을 제공하도록 구성하였습니다. 데이터 저장소로는 MariaDB를 사용하여 회원 정보, 친구 관계, 모임 정보, 검색 이력 및 모임 장소 정보를 관리하였으며, Redis를 활용하여 JWT Refresh Token 및 추천 결과 캐시 데이터를 관리하였습니다. 배포 환경은 AWS EC2 환경에 구축하였으며, Nginx를 이용한 리버스 프록시 및 HTTPS 환경을 적용하였습니다. 또한 카페24 도메인을 연동하여 실제 웹 서비스 형태로 운영할 수 있도록 구성하였습니다. ❍ 적용 기술 : 프레임워크 : Spring Boot 4.0.3, Spring MVC, Spring Data JPA 프론트엔드 : Thymeleaf, HTML5, CSS3, JavaScript 백엔드 : Spring Boot, Spring MVC, JPA, Hibernate 사용 언어 : Java 17, JavaScript, HTML5, CSS3 데이터베이스 : MariaDB, Redis 클라우드 : AWS EC2 통신 프로토콜 : REST API, HTTPS, SMTP 웹서버/배포 : Nginx, AWS EC2 인증/보안 : JWT(JSON Web Token) 기반 자동 로그인, BCrypt 비밀번호 암호화, 이메일 인증 데이터 접근 기술 : Spring Data JPA 빌드/의존성 관리 : Gradle 로깅 : Spring Boot Logging(Logback) API 활용 : 네이버 지도 API, 네이버 지역 검색 API, ODsay API, TMAP API 기타 : Lombok ❍ 아키텍처 : Layered Architecture(Controller-Service-Repository), MVC Pattern, REST API 기반 통신 ❍ 블로그 주소 : https://app.notion.com/p/325ddaebcd07800a9089d7a716a54b61 ❍ github 주소 : https://github.com/sisalbkim/wemeet ❍ 도메인 주소 : https://wemeet.ai.kr

공개된 YouTube 설명에 근거한 소개입니다. 설명에 없는 학생 정보나 기능은 추가하지 않습니다.

CONTINUE EXPLORING

기술로 이어지는 작품

모든 작품 보기 ↗

이런 프로젝트를 직접 만들어보고 싶다면

빅데이터소프트웨어공학과 알아보기 (새 탭)