Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spring Project 유기동물 입양 Web프로젝트

프로젝트 개요

온라인 유기동물 입양 페이지입니다. 게시판 기능을 통해 입양, 후기, 봉사활동 게시판을 이용할 수 있습니다.


주요기능

  • 개시판 기능
  • 보호소, 병원 위치 지도 안내
  • 문답을 통한 사용자 성향에 알맞은 동물 추천

진행 기간

  • 2024.10.28 ~ 2024.11.11

개발환경 및 사용언어

  • 언어: JAVA
  • 개발 환경: Windows 10/11, JDK11, SQL Developer, Oracle Database 11c
  • 설계도구: ERDCloud, draw.io, Figma
  • 기타: Spring Framework, KakaoMap API

담당 업무

  • 기능 순서도 작성

  • 게시판 페이지 구현

  • CRUD 기능 구현

  • KakaoMap API 이용하여 보호소, 병원 위치표시


ERDCloud 테이블 설계

ERD


기능


  • 입양후기 게시판

  • 게시판 목록 조회

    • 입양후기 게시글 데이터를 데이터 베이스에서 가져와 HTML 템플릿에 출력합니다.
    • 제목, 등록일만 SQL Mapper 작성을 통해 출력합니다. normal
  • 게시글 등록/상세조회

    • 글 등록 요청을 하면 POST 방식으로 서버에 전송됩니다. > Servlet은 이 요청을 받아 데이터를 처리합니다.
    • 게시글 등록 후, 목록으로 리다이렉트 합니다. normalDe
  • 게시글 수정/삭제

    • 게시글 수정이 가능하며, 삭제 시 삭제 확인 요청 페이지로 리다이렉트 후, 삭제를 진행합니다. normaledit

병원 및 보호소 안내

  • 병원 보호소 지도
  • KakaoMap API를 이용하여 병원과 보호소 위치를 사용자에게 제공합니다.
  • 지도 로드 시, 시간이 오래 소요되어 이용시 불편함을 예상했습니다. 1000개가 넘는 마커를 불러오면서 지연이 되고 있었습니다.
  • 클러스터링 기능을 이용하여 지도 축소 단계별로 마커를 묶어 출력했으며, 지도 로드시 지연이 발생하지 않게 되었습니다.

느낀점

이번 프로젝트를 통해 스프링 프레임워크의 구조와 파일 간 상호작용을 이해하기에 시간이 소요되었지만 결국 이해하게 되었고, 이를 바탕으로 CRUD 기능을 구현하며 게시판 구현을 통해 각 계층(컨트롤러, 서비스, 레포지토리)의 역할을 체험할 수 있었습니다. 완벽한 게시판 구현은 아니었지만, 학습한 개념을 바탕으로 다음 프로젝트에서 더 효과적으로 적용할 수 있을 것입니다. 또한, 카카오Map API를 활용한 프로젝트에서 2,000개 마커의 지도 로딩 속도를 개선하기 위해 클러스터링 기능을 적용했으며, 이를 통해 성능 최적화와 사용자 경험 개선의 중요성을 깨달았습니다. 협업 과정에서 오류를 수정하고 문제를 해결하는 과정에서 성취감을 느꼈고, 어려운 상황에서 끈기와 협력의 중요성도 배웠습니다. 앞으로 실무 능력을 향상시키고, 사용자 중심의 서비스를 만들기 위해 계속 학습하고 노력할 것입니다.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages