Tiny Star

프로젝트/반려동물 6

[반려동물 프로젝트] 마무리

서비스 고민에서 구성했던 페이지에서 변경이 있다. 추가할 페이지RFID 통계품종 분포도 -> 지역별 대표 품종과 겹치므로 제거New! 연도별 등록 추이소개 나머지 페이지는 기존이랑 큰 차이가 없어서 어제 새벽에 한 페이지, 방금 남은 작업을 끝냈다. 최종 페이지소개 우리 지역 견종과 묘종은? RFID 비율 연도별 등록 추이 github code 는 [여기]에서 확인할 수 있다. 간단한 프로젝트를 끝내며그다지 어려운 프로젝트가 아니었다. 오히려 쉬웠다고 볼 수 있다.이런 쉬운 프로젝트를 뭐하러 하냐고 할 수 있다. 실무에서 썼던 툴은 잘 다룬다고 할 수 있지만, 다르게보면 다른 툴은 못한다라고 볼 수 있다. MyBatis 대신 JPA를 사용하고, JPA 속에서 복잡한 쿼리를 어떻게 할지 고민하다가..

[반려동물 프로젝트] 백엔드 수정 (SpringCache)

백엔드 수정 사항region 캐시species 캐시dog/cat List 말고 다른 방식 구현QueryRepository = Service 역할 분리 region + sepecies 합쳐도 50개도 안되기 때문에 Spring Cache를 사용하려고 한다.대용량이거나 이벤트성이었으면 Redis와 Kafka를 고려했을텐데, 전혀 아니니..다음엔 다른 성향의 프로젝트로 위 캐시를 써봐야겠다. 캐시@EnableCaching // 추가@SpringBootApplicationpublic class PetstatsApplication { public static void main(String[] args) { SpringApplication.run(PetstatsApplication.class..

[반려동물 프로젝트] 프론트 구현 (Mustache)

프론트는 JSP 로 하려고 했으나, 뷰에서는 백엔드와는 완전히 분리되는게 좋을 것 같다.(경험을 위한 JSP 는 다른 프로젝트에서 해보는 걸로...) JSP vs Mustache vs Thymeleaf 항목 JSP Mustache Thymeleaf 템플릿 문법자바 코드 삽입 가능 ()순수 템플릿, 로직 없음HTML 태그에 속성(th:)으로 표현문법 표현력강력하지만 복잡단순, 제한적 ({{#each}})풍부하고 직관적 (th:if, th:each)HTML 정합성❌ 깨질 수 있음 (스크립틀릿 등)⛔ HTML로 직접 열면 깨질 수 있음✅ HTML로 열어도 유효한 마크업성능/속도느림 (JSP 컴파일 필요)빠름 (경량 템플릿)중간 (HTML DOM 기반)유지보수성❌ 로직 섞이기 쉬움✅ 표현만 담당, 구..

[반려동물 프로젝트] 백엔드 구현 (QueryDSL)

화면으로 보낼 데이터를 작업하려고 한다.서비스 고민할 때 가장 첫 번째로 떠올렸던 '지역별 대표 품종' 쿼리부터 작업해보자. 의존성 설정val queryDslVersion = "5.0.0"dependencies { implementation("com.querydsl:querydsl-jpa:${queryDslVersion}:jakarta") annotationProcessor("com.querydsl:querydsl-apt:${queryDslVersion}:jakarta") annotationProcessor("jakarta.annotation:jakarta.annotation-api") annotationProcessor("jakarta.persistence:jakarta.pers..

[반려동물 프로젝트] DB 구성 (JPA, Python)

쿼리해서 프론트로 보내주기만하면 되기 때문에데이터만 잘 셋팅해두면 그 이후에는 간단할 거라고 생각한다.(프론트 빼고...) DTO 생성 가장 먼저 JPA 를 사용해 테이블을 생성한다. (참고)테이블은 초기에 생각했던 테이블 구성으로 진행했다. 데이터 삽입 API가 업데이트되고 있는지 의심스럽기 때문에일단은 파일을 다운로드해서 데이터를 넣기로 했다. import pandas as pdfrom sqlalchemy import create_enginedef get_engine(db_info): return create_engine(f"mysql+pymysql://{db_info['user']}:{db_info['password']}@{db_info['host']}:{db_info['port']}/..

[반려동물 프로젝트] 데이터 활용 고민

경기데이터드림에서 제공하는 [경기도 동물등록 현황]이 궁금해서 들어갔는데, 항목들이 너무 귀엽다. (맹견여부는 동물보호법상 맹견으로 지정된 도사견, 핏불테리어, 아메리칸 스태퍼스셔 테리어 등에 해당하는지 여부를 나타냄) 나만 귀엽나? 아무튼 데이터 본 김에 간단한 리스트 형태의 페이지 만들면 좋을 것 같다. 일마다 업데이트 된다고 하는데, 최신 업데이트가 2025/04/23 임에도 불구하고,생년 가장 최근이 2024인거보면 최신업데이트가 안되고 있는 듯하다.유기견을 입양하거나, 뒤늦게 등록할 수 있지만 그 중에 25년생이 하나도 없다는게 이상하다... 서비스 고민지역별 대표 품종 (TOP10)품종별 개체 수 막대 그래프 또는 파이차트믹스견, 진도견, 말티즈, 푸들, 치와와 등 분포 비교활용 데이터: ..

top