본문 바로가기

스프링과 JPA 기반 웹 어플리케이션 개발85

85. 배포시 고려할 것 고려해야 할 것 환경(프로필)에 따라 각기 다른 설정파일 제공하는 방법 로깅 패키징 배포 방법 프로필별 설정 파일 application-{profile}.properties 위치에 따른 우선 순위 파일 시스템 "현재 디렉토리/config"에 있는 application-{profile}.properties 파일 시스템 "현재 디렉토리"에 있는 application-{profile}.properties 클래스패스의 ".config"에 들어있는 application-{profile}.properties 클래스패스 루트에 있는 application-{profile}.properties 로깅 모니터링 시스템과 연동 필요 민감한 데이터를 로깅하지 않도록 설정 각 배포 환경에 알맞은 로깅 설정 필요 패키징 외부 톰캣.. 2020. 5. 18.
84. 에러 핸들러 및 뷰 추가 클라이언트가 잘못된 요청을 보내오는 경우 404 에러 페이지로 보낸다. 잘못된 요청의 예 없는 스터디 페이지 조회 시도 없는 프로필 페이지 조회 시도 무작위 이벤트 조회 시도 허용하지 않는 요청 시도 이미 종료된 스터디의 모임 생성 시도 이미 종료된 모임에 참가 신청 시도 관리자 권한이 없는 스터디 수정 시도 ....... 에러 페이지 작성(error.html) 스터디올래 잘못된 요청입니다. 첫 페이지로 이동 이런 에러페이지 작성으로 잘못된 요청을 처리할 수 있지만 어떤 사람이 악의적으로 잘못된 요청을 시도한다던지, 이용자들이 제일 실수하는 요청이 무엇인지 로그로 남길필요가 있을때는 따로 핸들러를 만들어주는것이 좋다. 에러 처리하는 핸들러 작성 package me.weekbelt.studyolle.mod.. 2020. 5. 18.
83. 로그인 한 사용자를 위한 첫 화면 이 화면을 N+1 Select 문제 없이, 쿼리 6개를 사용해서 만드세요. 계정 조회(관심 주제, 지역 정보 포함) 참석할 모임 조회 나의 주요 활동 지역과 관심 주제에 해당하는 스터디 조회 (Tag와 Zone은 && 조건입니다.) 관리중이 스터디 조회 참여중인 스터디 조회 알림 조회 뷰에 전달해야 할 모델 데이터 account: 현재 로그인한 사용자의 정보 enrollmentList: 참석 확정된 참가 신청 정보를 통해 '참석할 모임' 목록 출력 studyList: 주요 활동 지역의 관심 주제 스터디 리스트 6개까지만(스터디 공개시간 역순) studyManagerOf: 지금 접속한 계정으로 관리중인 스터디 5개 까지(스터디 공개시간 역순) studyMemberOf: 지금 접속한 계정으로 참여중인 스터디.. 2020. 5. 18.
82. 로그인 하지 않은 사용자를 위한 첫 화면 최근 9개의 스터디를 조회해서 화면에 보여줄 것.(공개했고, 아직 종료하지 않은 스터디 중에서) 페이징 없고 List로 조회 쿼리 만들기 않고 스프링 데이너 JPA 쿼리 메소드로 만들어 볼 것. 뷰 코드는 최대한 재사용 할 것. 이전 코드 리팩토링 화면에 Study Entity의 memberCount로 멤버수를 표시하기 때문에 members를 조인하는 부분을 삭제(시간이 많이 걸리기 때문) package me.weekbelt.studyolle.modules.study; public class StudyRepositoryExtensionImpl extends QuerydslRepositorySupport implements StudyRepositoryExtension{ public StudyReposito.. 2020. 5. 18.