Genie의 Java 개발 공부와 일지를 기록하는 아카이브 공간 전체 글176 (24.07.24)[15주차] Sprint Data JPA Tuple 객체의 사용 JPQL을 통한 JPA를 쿼리 언어를 사용하면서 여러 테이블을 조인을 하다가 보면은 다양한 컬럼들의 값들을 골라서 사용을 하고 싶을 때가 있다. 즉 게시글 테이블에는 작성자 User의 ID만이 저장되어있지만, User 테이블과 JOIN을 해서 User 테이블에서 사용자ID가 아닌 이름이나 기타 정보를 가지고 있는 컬럼들을 골라서 가지고 올 수 있어 프로젝트에 있어서 조회 부분에 능동적으로 사용하기 위해서 Tuple 객체의 사용을 정리 Tuple 객체JPQL은 SQL 처럼 Table 이 아닌 Entity(객체) 기준으로 작성하는 쿼리문으로 @Query Annotation을 사용해서 해당 쿼리를 컴파일시 체크를 할 수 있도록 할 수 있음따라서, 이러한 JPQL은 실제 SQL처럼 JOIN 문을 통해서 여러.. 2024. 7. 24. (24.07.24) 코드 리뷰 게시글 조회 & 카테고리 검색 기능 구현 코드 리뷰 CodeReview 조회 & 카테고리 검색 기능 - JPQL 활용 기능팀원들의 QueryDSL 사용에 있어서 불편함이 있다는 의견이 많아 JPQL과 JpaRepository 상속받아서 쿼리 메서드를 사용하는 방향으로 결정본인은 SQLD 공부를 했었기 때문에 조회 관련하여 SQL다루는 것이 어렵지 않아 크게 문제가 되지 않으나, QueryDSL을 사용하기 위해서는 JPAQueryFactory 의 Bean등록을 위한 Configuration 클래스와, QueryDSL을 사용할 수 있는 인터페이스와 해당 구현을 해야하는 Repository 클래스를 더 추가해야하므로 볼륨이 굉장히 커진다고 판단코드 리뷰 CodeReviews 전체 게시글 조회 기능 // 게시글 전체 조회 public CodeRevi.. 2024. 7. 24. (24.07.23) 코드 리뷰 게시글 수정/삭제 기능 구현 + 코드 리뷰 댓글 생성/수정/삭제 기능 구현 + 댓글 좋아요 추가/삭제 기능 구현 코드 리뷰 CodeReview코드 리뷰 CodeReviews 게시글 수정 기능// CodeReviews 엔터티...@Column(nullable = false) private String title; @Column(nullable = false) private String category; @Column(nullable = false) private String contents; @Column private String code;...public void updateCodeReview(CodeReviewsRequestDto codeReviewsRequestDto) { this.title = codeReviewsRequestDto.getTitle(); this.contents = c.. 2024. 7. 24. (24.07.23)[15주차] MinIO 활용 정리 - 코드 분석 S3대신 개발/테스트 환경으로 MinIO를 사용하기로 결정하여 학습하고 검색한 대로 패턴을 보면서비지니스 로직을 Service 단에 구성을 했다.하지만, JSON에서 한 필드의 값으로 받아온 String 타입의 텍스트를 txt 파일로 바꾼뒤에, MinIO 서버의 버킷에 저장하고 다운로드 하는 코드의 구조를 한번 더 점검하면서, 추후 필요할 경우에 능동적으로 사용할 수 있도록 분석한 부분을 정리사전 세팅code 는 RequestDTO의 코드 리뷰의 코드 부분을 Spring 으로 String 타입으로 가져온 텍스트codReviewId는 code 부분을 제이한 코드 리뷰의 제목, 내용을 담은 객체로 이미 DB에 save에 되에서 PK인 해당 객체의 IDminioClient 는 이미 주입받은 형태업로드Strin.. 2024. 7. 23. (24.07.22) 코드 리뷰 게시글 생성 기능 구현 코드 리뷰 CodeReivews 게시글 생성 기능코드 자체를 JSON 형태로 DB에 저장을 하는 것은 관계 데이터를 확인하는 MySQL DB의 성격과 맞지 않다고 판단너무 과도하게 길어지는 코드일 경우, DB에 저장 시, 다수의 코드 리뷰를 조회/수정 에 있어서 많은 성능을 요구할 것이라고 생각 -> 따로 S3 구성하지만, 개발 단계이기 때문에 MinIO 사용 환경을 만들어 놓을 경우 다른 추가 기능이 발생했을 경우 이미지 등 미디어 파일, 코드 파일 그대로 저장해서 사용할 수 있다고 판단 @Transactional public CodeReviewsResponseDto createCodeReview(CodeReviewsRequestDto codeReviewsRequestDto, Users us.. 2024. 7. 23. 이전 1 ··· 4 5 6 7 8 9 10 ··· 36 다음