JPA 5

Querydsl 통계 작업(미완료)

요구사항 1. 연령별 통계 2. 최초 진입 (날짜 검색 없을시) 30일전 ~ 현재 날짜 통계 날짜 테이블을 100년치 생성 후 member 테이블에 있는 가입날짜와 조인 하여 통계가 0인 날짜도 대응하였다. 1. 최초 진입 30일전 ~ 현재 날짜 검색조건 class currentDate : 현재 날짜 oneMonthAgoDate : 30일 전 날짜 sdate : 30일 전 날짜 edate : 현재 날짜 이렇게 사용하니 코드가 훨씬 간결해졌다 여기서 만약 요구사항이 바뀌면 변수 만 수정하면 된다 쿼리 # 봉사자 연령별 통계 SELECT calender_tb.calendar_date AS '날짜', SUM(CASE WHEN YEAR(NOW()) - YEAR(STR_TO_DATE(IFNULL(t2.birth,..

프로젝트 2024.03.29

[차량 점검플렛폼 프로젝트 회고] 회원가입 기능

약관 동의 회원가입 (Nice 본인인증) 회원가입 완료 1. 약관 동의 요구사항 - 이용약관 필수 , 개인정보처리방침 필수 마케팅 정보 선택 - 필수사항을 동의 하지 않으면 다음 스텝으로 넘어가지 못한다. 프로젝트를 진행을 하다보니 정상적으로 약관 동의를 선택을하고 다음 버튼 누르면 상관 없는데 개발자는 항상 모든 상황에 대비를 해야하니 .. URL 로 다음 스텝으로 넘어가지 못하게 POST 방식으로 처리했다. URL GET 요청이 들어왔을때는 message 파리미터 값을 넘겨 다시 스텝 1으로 리턴 시켰다 2. 회원가입 폼 (Nice 본인인증) Nice 인증 창을 띄우기 위해서는 암호화 토큰 값 3개가 필요하다 - 문제점 이렇게 nice를 바라보고 팝업 창을 띄우니 크로스 도메인에 걸려 팝업을 띄우는..

회고 2024.01.24

[차량 점검 플랫폼_대시보드] 프로젝트 회고(미완료)

배운것 메서드 위에 @ModelAttribute 어노테이션 사용법 컨트롤러에서 메서드 위에 @ModelAttribute가 사용되는 경우는, 해당 컨트롤러 내의 어떠한 핸들러 메서드들보다 먼저 동작하게 됩니다. 따라서 여러 핸들러 메서드에서 공통으로 쓰입니다. 단점 해당 컨트롤러에 모든 메서드에서 사용이 가능하기 때문에 불필요한 쿼리가 실행돼서 여러 비즈니스 로직이 들어있는 컨트롤러에서는 비효율 적인 것 같다 요구사항 - 금일 , 금월, 금주 주요 현황 카운트 - 신규 예약 리스트 - 사용자 회원 카운트 - 파트너 회원 카운트 - 미승인 회원 카운트 - 회원 총합 - 건의 사항 리스트 - 공지사항 리스트 각 종 카운트 합계를 내야해서 controller가 너무 무거워져 조건이 간단한 합계는 메서드 위에 @..

회고 2024.01.24

JPA

JPA JPA(Java Persistence API) Java 진영에서 ORM(Object-Relational Mapping) 기술 표준으로 사용하는 인터페이스 모음 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스 인터페이스 이기 때문에 Hibernate, OpenJPA 등이 JPA를 구현함 2. ORM - Object-relational mapping(객체 관계 매핑) - 객체는 객체대로 설계 - 관계형 데이터베이스는 관계형 데이터베이스대로 설계 - ORM 프레임워크가 중간에서 매핑 - 대중적인 언어에는 대부분 ORM 기술이 존재