본문 바로가기

전체 글29

서비스&레포지토리, 댓글 좋아요 서비스 : 어플리케이션에서 작업 속도도 엄청 빠름(cpu 캐시 메모리 사용해서) 레포지토리 : 메모리 작업 비추(속도가 느림)   댓글에 좋아요 넣는법 1. N:M관계 이용 - CommentUser를 제작해서 좋아요를 누르면 여기 등록 - CommentId로 조회해서 총 갯수를 보여줌 - 삭제시에도 CommentUser에서 Delete를 이용해서 드랍시킴 2. 유저 자체에 Boolean 리스트를 제작 → 파일이 커져서 비효율적- 유저에 likeBoolean 리스트를 제작해서 모든 포스트 댓글리스트 아이디를 넣음- 굉장히 비효율적 공간 활용도 ↓ ↓ ↓ 코딩방법 - 극 초보자들이 하기 편함 3. aws 서비스를 이용 - 웹 서비스 중에 실시간 로그 서비스를 이용해서 로그 상에 좋아요를 누르는 형태로 적용 .. 2024. 1. 11.
빌더&팩토리, DB 연관 관계, 상속 빌더각 클래스에 빌더 메소드를 생성빌드 어노테이션으로 대체 가능팩토리팩토리 크리에이트~~ 메소드로 각 클래스 생성여러 클래스를 한 팩토리로 컨트롤 가능DB 연관 관계 정리 1:N / N:1 / N:M1:N @OneToMany 나 하나에 여러개의 엔티티에 연관 관계를 가짐 DB에 따로 저장 되진 않음 없어도 무방함N:1 @ManyToOne 나 여러개가 하나의 엔티티에 연관 관계를 가짐 내 DB에 하나의 엔티티의 id값이 외래키로 저장이 됌 -> 이 놈을 가지고 쿼리 상위 호출 가능(Where문)N:M @ManyToMany 나 여러개가 여러개의 엔티티에 연관 관계를 가짐 이 경우 DB상에서 충돌 나기 때문에 중간 관리자를 두어 관리해야함상속builder 상속 SuperBuilder 어노테이션을 사용하여 부모.. 2024. 1. 10.
@EntityGraph @EntityGraph 란? 간단히 말하면 엔티티를 조회할때 연관된 엔티티들을 어떻게 가져올지 선언하는 방법이다.이 애너테이션을 사용하면 JPA는 쿼리문을 생성할 때 지정한 연관 엔티티를 함께 조회한다. 연관관계가 지연로딩으로 되어있을 경우 fetch 조인을 사용하여 여러번의 쿼리를 한번에 해결 할 수 있는데, 이를 Data JPA에서 애너테이션으로 쓸 수 있도록 만든 기능이다. @EntityGraph 타입EntityGraph.EntityGraphType.FETCH EntityGraph.EntityGraphType.LOAD FETCH는 엔티티그래프에 적힌 것들은 EAGER로,  나머지는 LAZY로 로딩한다.LOAD는  적힌것들은 EAGER,  나머지는 기본으로 지정된 타입으로 처리한다. 2023. 12. 28.
도커 컴포즈 도커 컴포즈단일 서버에서 여러개의 컨테이너를 하나의 서비스로 정의해 컨테이너의 묶음으로 관리할 수 있는 작업 환경을 제공하는 관리 도구여러 개의 컨테이너가 하나의 어플리케이션으로 동작할 때 도커 컴포즈를 사용하지 않는다면, 테스트시 각 컨테이너를 하나씩 생성해야 한다. 따라서 도커 컴포즈를 이용해 컨테이너를 이용한 서비스의 개발과 CI를 위해  여러 개의 컨테이너를 하나의 프로젝트로서 다룰 수 있는 작업 환경을 제공 받는다.도커 컴포즈는 여러 개의 컨테이너의 옵션과 환경을 정의한 파일을 읽어 컨테이너를 순차적으로 생성하는 방식으로 동작한다. 도커 컴포즈를 사용하려면 컨테이너 설정을 저장해 놓은 yaml 파일이 필요하다. 기존에 사용하던 run 명령어를 yaml 파일로 변환하는 것이 도커 컴포즈 사용법의 .. 2023. 12. 19.