[Spring Boot] 스프링 부트와 AWS로 혼자 구현하는 웹 서비스1

쑥쑥🌿·2023년 6월 2일

Chapter03

[ h2 데이터베이스 Web Console 설정 및 확인하기 ]

  • in-Memory 형식으로 H2(DataBase)사용하고 있음. DB에 직접 접근하려면 '웹 콘솔'을 사용해야 함
    application.propertise파일에 아래와 같이 설정해줌
--application.propertise

spring.h2.console.enabled=true
  • web console 확인을 위해 main메소드 실행 시 오류 발생

📢 오류
tomcat port가 중복 실행되어 application 구동시 아래와 같은 오류가 발생했다.
실행중인 port를 종료하기 위해서 취한 방법

  1. 윈도우단축키 + R
  2. 검색창입력 : cmd
  3. enter
       별도의 계정으로 진행 시 액세스 거부가 됨으로 관리자 계정으로 들어가야 함
       → 관리자 계정으로 cmd 열기 : ctrl + shift + enter
  4. cmd창 입력 : netstat -ano|findstr 8080
  5. 위의 결과로 나온 PID 번호 확인 → 나는 5272이었음
  6. taskkill /F /PID 5272 입력하여 해당 포트번호로 실행중인 프로세서 종료

    <정상화면>정상화면

[ JPA Auditing으로 생성/수정시간 자동화 ]

  • Entity에 일반적으로 createDate와 updateDate가 포함되어 있음. 매번 DB에 insert하고 update하기 전에 날짜 데이터를 등록 및 수정하는 코드가 여기저기 들어가게 됨. 단순하고 반복적인 해당 코드를 해결하고자 JPA Auditing을 사용함
  • BaseTimeEntity 클래스를 만들어 해당 프로젝트의 모든 Entity의 상위 클래스가 되어 Entity들의 createdDate, modifiedDate를 자동으로 관리하는 역할을 만들어줌
    어노테이션내용
    @MappedSuperClassJAP Entity 클래스들이 createdDate/modifiedDate 필드를 선언한
    class(BaseTimeEntity)를 상속할 경우 해당 칼럼을 인식하도록 한다.
    @EntityListeners
    (AuditingEntityLinstener.class)
    BaseTimeEntity클래스에 Auditing 기능을 포함시킨다.
    @CreatedDateEntity가 생성되어 저장될 때 자동으로 저장된다
    @LastModifiedDate조회한 Entity의 값을 변경할 때 시간이 자동 저장된다
    @EnableJpaAuditingJPA Auditing 어노테이션들을 모두 활성화

참고
1. 프롬포트창에서 실행중인 프로세스 종료

profile
날로 날로 발전하기.

0개의 댓글