이집어때 - 백년가게 음식점 검색·추천 서비스

발표자료 섬네일

CURRICULUM 과정소개

과정명빅데이터 기반(파이썬·자바·웹) 엘라스틱 검색엔진 개발자_6회차_종일
담당강사 / 발표일시윤종욱 / 2026.09.22
프로젝트명이집어때 - 백년가게 음식점 검색·추천 서비스

ROLL 역할분담

김OO- 구독권·음식점 관련 Controller·DAO·DTO 및 화면 개발
- Elasticsearch 검색·Kibana 통계 연동
- Q&A 답변
- 아이디·비밀번호 찾기 및 이메일 인증 구현
박OO- 백년가게 자료 수집·정제
- 결제·환불 관련 프로그램 개발
- Elasticsearch 검색·Kibana 통계 연동
- 챗봇 구현
최OO· Q&A·후기·이벤트·공지사항 게시판 관련 Controller·DAO·DTO 및 화면 개발
· 후기 별점 기능과 입력값 유효성 검사 구현
허OO· 회원가입·로그인·로그아웃 및 회원관리 관련 Controller·DAO·DTO·화면 개발
· 회원정보 등록·조회·수정·삭제와 유효성 검사
· 최종보고서·발표자료 작성

PROJECT 프로젝트소개

개요
프로젝트 주제 선정에 대한 이유와 그 배경에 대해 설명합니다.

1. 백년가게 정보의 접근성 개선
- 백년가게 음식점에 대한 정보가 여러 곳에 분산되어 있어 원하는 정보를 한눈에 확인하기 어려운 점에 주목했습니다.

2. 최신화된 음식점 정보 제공
- 기존 관련 사이트의 정보가 충분히 최신화되지 않은 경우가 있어, 음식점 정보를 보다 편리하게 확인할 수 있는 소개 서비스를 만들고자 했습니다.

3. 검색 및 추천 기능 구현
- 검색 및 자동완성 기능과 Elasticsearch를 활용하여 사용자가 원하는 백년가게를 쉽고 빠르게 찾을 수 있도록 구현하고자 했습니다.

4. 실제 서비스 구현
- 이메일 발송, 결제·환불 API, 챗봇 등 다양한 기술을 적용하여 실제 서비스와 유사한 기능을 구현하고 새로운 기술을 경험하고자 했습니다.

"당신이 찾던 변치 않는 단 하나의 백년가게, 이집어때에서 찾아보세요."
구현기능
· 회원가입·로그인·이메일 인증 및 아이디·비밀번호 찾기
· 음식점 검색·자동완성·조건별 조회
· 상세정보·지도·챗봇
· 구독권 구매·결제·환불
· 후기·별점·북마크
· Q&A·공지사항·이벤트
· 관리자 회원·음식점·구독권·게시판 관리
· Kibana 음식점·검색·회원·구독권 통계 시각화
설계의 주안점
· 백년가게 음식점 데이터를 수집·정제하고 음식점·회원·구독권·주문·후기·북마크 간 관계를 정의하여 데이터의 일관성 확보
· Oracle DB와 Elasticsearch 인덱스를 연계하여 검색·자동완성 및 통계 분석 지원
· 회원·관리자 권한과 입력값 검증을 적용하고, 구독권 구매·결제·환불 및 이메일 인증 흐름 설계
· MVC 구조로 기능을 분리하여 유지보수와 협업이 가능하도록 구성
사용기술 및 개발환경
▶사용기술: HTML, CSS, JavaScript, Java, Python, Selenium, Oracle DB, MyBatis, JSP, Spring Boot, Elasticsearch, Kibana

▶개발환경 및 도구: JDK 17, STS4, PyCharm, Apache Tomcat, SQL Developer, ERwin, StarUML, Gradle, GitHub, Notion

▶외부 연동: 지도·이메일 인증·결제 및 환불 API, 챗봇
프로젝트 수행 절차 및 방법
발표자료 상세페이지1발표자료 상세페이지2
발표자료 상세페이지3발표자료 상세페이지4
발표자료 상세페이지5발표자료 상세페이지6
발표자료 상세페이지7발표자료 상세페이지8
프로젝트 시연영상
자체 평가
● 김OO : 이번 프로젝트에서는 이전 프로젝트에서 사용하지 않았던 Elasticsearch를 연동하여 검색 및 자동완성 기능을 구현하고, 아이디 찾기와 비밀번호 찾기, 회원가입 시 이메일 발송 API 등 다양한 새로운 기술과 기능을 직접 경험해볼 수 있었던 점이 좋습니다.
반면 새로운 기술과 기능을 많이 적용해보려는 과정에서 초기 설계가 충분하지 못했던 점은 아쉬웠습니다. 개발 과정에서 추가되는 기능이 많아 기존 코드나 구조를 수정하는 경우가 있었으며, 이를 통해 개발 초기에 기능과 데이터 흐름을 보다 구체적으로 설계하고 이후 추가될 기능까지 고려하여 구조를 잡는 것이 중요하다는 것을 배웠습니다.

● 박OO : 이번 프로젝트에서 결제 프로세스를 구현 하면서, 단순하게 결제 및 환불 기능만 구현하는게 아닌, 중복 결제(환불) 요청 처리나 네트워크 장애, DB 에러 등 한쪽만 성공한 예외 상황 처리 등 실제로 일어날 수 있는 다양한 예외 상황을 처리하는 로직을 구현해봤습니다.
또한 ES에 등록된 구독권 정보를 이용해서 운영자 입장에서 실제 매출 통계를 확인 할 수 있도록 구현했고, ES와 LLM API를 연동해 챗봇을 구현해봤습니다. ELK Stack을 실제 서비스에서 사용해본건 처음이었기 때문에 초기 인덱스 설계부터 탄탄하게 하지 못했던 것이 아쉽습니다.

● 최OO : 이번 프로젝트에서는 이전에 일부러 다루지 않았던 영역에 도전했다. 게시판과 더미네이터 처리, 카카오맵 API 연동을 새롭게 경험하면서 전반적인 이해도를 한 단계 끌어올릴 수 있었고, 단순 기능 구현을 넘어 API 키 관리·도메인 등록처럼 실제 서비스 운영 단계에서 필요한 개념까지 폭넓게 학습할 수 있었습니다.
AI를 활용하다 보니 작업 속도는 높일 수 있었지만 빠르게 해결하는 데 집중하다 보니 깊이 파악하지 못해 넘어간 부분도 있었습니다. 결과물을 받아들이기보다 동작 원리와 이유에 대해 한 번 더 생각하면서 AI를 주체적으로 활용해야 겠다고 생각했습니다.

● 허OO : 이번 프로젝트에서는 회원과 관련된 부분을 전체적으로 구현하는 것에 기여했습니다. 페이지 간 이동이 원활하도록 컨트롤러나 XML 매핑을 조정하며 코딩 과정에 대한 전반적인 이해도가 상승했습니다. CSS를 작업하면서도 깔끔하면서도 고급스러운 디자인을 목표로 통일감있게 시도해보았는데, 만족스러운 작업이었습니다.
코딩 과정에서 클로드AI를 사용하기도 했는데, 의존도를 최소화하려 노력했음에도 도움을 받은 부분이 많습니다. 계속 학습하며 AI의존도를 낮추는 것이 다음 목표입니다. 실무에선 스스로 전반적인 코드를 다듬을 수 있도록 꾸준히 학습할 계획입니다.

망설임은 끝, 지금 당신만의
AI 커리어 로드맵을 설계하세요.

1:1 맞춤 교육상담
내 상황과 목표에 딱 맞는
커리큘럼과 취업 로드맵을 설계해드립니다.

* 교육 전문 컨설턴트를 만나실 수 있습니다.

* 분야별 스페셜리스트가 함께 합니다.

교육희망 지점

신청자 정보

자세히 보기
  • 수집항목

    이름, 연락처, 수강안내 관련 이력
  • 이용목적

    수강안내 제공, 관련 이력 관리 및
    맞춤형 재안내를 통한 서비스 품질 개선
  • 보유기간

    수집일로부터 최대 3년간 보관 후 파기
자세히 보기
  • SMS/이메일로 이벤트 · 할인 정보 발송
닫기
로그인하셔야 본 서비스를 이용하실 수 있습니다.