Recording/멋쟁이사자처럼 BE 13기

Recording/멋쟁이사자처럼 BE 13기

[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_51일차_"Criteria + hr DB"

🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [51]일차🚀51일차에는 Criteria API에 대해 배워보고, hr 데이터베이스를 통해 E-R Diagram 기반으로 엔티티를 설계하는 것을 실습할 수 있었다.학습 목표 : ERD를 보고 엔티티를 설계할 수 있는 것과 관계매핑을 할 수 있음학습 과정 : 회고를 통해 작성Criteria APIJava Persistence API의 일부로써 복잡한 검색 기능을 구현할때SQL이나 JPQL 문자열을 직접 작성하지 않고도 동적으로 쿼리를 생성하고 실행할 수 있게 해줌따라서 개발자가 프로그램 코드 내에서 SQL과 유사한 연산을 수행할 수 있게하는 객체지향 API를 제공구성요소타입 안전성 : 컴파일 시점에 쿼리의 구문 오류를 잡아낼 수 있어서 실행 시..

Recording/멋쟁이사자처럼 BE 13기

[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_50일차_"Spring Data JPA"

🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [50]일차🚀50일차에는 이전에 JPA를 배웠다면 이번에는 Spring과 함께 쓰는 Spring Data JPA에 대해 배울 수 있었다.학습 목표 : JPA를 활용하여 Spring에서 메소드를 활용하는 방법에 대해 실습학습 과정 : 회고를 통해 작성Spring Data JPASpring프레임워크의 일부로 자바 개발자들이 관계형 DB의 데이터 접근을 용이하게 할 수 있도록 설계복잡한 쿼리를 간단하게 처리, DB작업을 자동화하여 생산성을 향상시킴주요 기능:➡️리포지토리 추상화 : 리포지토리라는 개념을 사용해 CRUD연산을 위한 공통 인터페이스를 제공➡️쿼리 메소드 생성 : 메소드 이름만으로 쿼리를 생성할수 있는 기능을 제공 = 즉 메소드의 이름을..

Recording/멋쟁이사자처럼 BE 13기

[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_49일차_"JPA 상속 관계 매핑"

🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [49]일차🚀49일차에는 JPA를 통해 상속 관계를 매핑할 수 있는 "상속 관계 매핑"에 대해 실습해보았다.학습 목표 : 자바에서의 상속관계를 JPA 상속 매핑 전략들로 구현할 수 있도록 함학습 과정 : 회고를 통해 작성상속 매핑 전략JPA에서의 상속매핑 전략은 "객체지향모델에서 상속구조를 어떻게 관계형 DB 스키마에 매핑할지"를 정의3가지 주요 상속 매핑 전략1. 단일 테이블 전략 (SINGLE_TABLE)2. 조인 테이블 전략 (JOINED)3. 테이블 당 구체 클래스 전략 (TABLE_PER_CLASS)공통적인 것들은 따로 빼놓고 상속을 통해서 이 공통적인 것들을 상속받아 사용하도록 하는 것이 상속 매핑 전략자바에는 상속이 있지만 관계형..

Recording/멋쟁이사자처럼 BE 13기

[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_48일차_"JPA 관계형 테이블"

🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [48]일차🚀48일차에는 JPA에서의 관계형 테이블을 실습해본다. 1:N 처럼 (일 대 다) 관계가 아닌 N:N (다 대 다)관계와 1:1 (일 대 일)관계의 테이블을 실습해보면서 1:N 테이블과의 다른점을 배울 수 있었다.학습 목표 : 영속성 컨텍스트 사용 시 엔티티 간 관계 정립을 이해해야함, 예외 발생 가능성을 생각해야함학습 과정 : 회고를 통해 작성fetch기존 find() 메소드// 데이터 조회 private static void find(){ EntityManager em = JPAUtil.getEntityManagerFactory().createEntityManager(); em.getTransact..

Recording/멋쟁이사자처럼 BE 13기

[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_47일차_"JPA 엔티티 매핑"

🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [47]일차🚀47일차에는 JPA에서 테이블 간의 관계 매핑을 어떻게 구현할 수 있는지 배울 수 있었다.@OneToMany, @ManyToOne 등 테이블 간 1:N (일 대 다) 관계를 정의해낼 수 있는 것을 실습해보았다.학습 목표 : 테이블 간 관계매핑을 JPA를 통해 구현해낼 수 있어야함, 테이블의 제약조건을 클래스로써 정의해야함학습 과정 : 회고를 통해 작성EntityManagerFactory🚀EntityManagerFactory에 대한 이해를 하기 위해 추가적으로 회고 정리를 하였다. UserDAO// 필드 선언private EntityManagerFactory emf;EntityManagerFactory 인스턴스는 EntityMan..

Recording/멋쟁이사자처럼 BE 13기

[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_46일차_"JPA"

🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [46]일차🚀45일차 게시판 프로젝트 발표 이 후 46일차에는 Spring Data JPA를 배울 수 있었다. JPA에 대해 자세히 알아보고 왜 활용되는지, 로그 처리와 더불어서 실습할 수 있었다.학습 목표 : JPA에서 사용되는 기술들과 구성요소에 대해 익숙해지는 것학습 과정 : 회고를 통해 작성Spring Data JPASpring Data JDBC와는 비슷하지만 내부적으로는 동작방식이 상이JPA (=Java Persistence API) : 자바 플랫폼에 대한 ORM 표준을 제공하는 API객체 지향 모델을 관계형 데이터베이스의 테이블에 매핑하여 개발자가 DB작업을 더 직관적이고 객체 지향적인 방식으로 수행하도록 도움ORM = Object..

Recording/멋쟁이사자처럼 BE 13기

[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_44일차_"페이징 처리"

🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [44]일차🚀44일차에는 실습했던 기존의 친구목록 페이지를 리팩토링하여 페이지를 도입하고 페이징 처리를 통해 친구목록이 페이지마다 특정 개수로 출력될 수 있도록 구현할 수 있었다.학습 목표 : 페이징 처리에 익숙해질 수 있도록 관련 용어 및 활용예시에 대해 공부학습 과정 : 회고를 통해 작성▶️실습 - 페이지 추가service/FriendService 추가@Transactional(readOnly = true)public Page findAllFriend(Pageable pageable){ Pageable pageable2 = PageRequest.of(pageable.getPageNumber(), ..

Recording/멋쟁이사자처럼 BE 13기

[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_43일차_"친구목록 페이지"

🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [43]일차🚀43일차에는 Batch하는 방법에 대해 잠깐 배우고, 트랜잭션에 대해서 배울 수 있었다.그리고 Spring JDBC와 Spring Data JDBC를 토대로 친구목록 페이지에 대한 프로젝트를 진행해볼 수 있었다.Batch 업데이트 작업JdbcTemplate에서 batchUpdate() 메소드를 통해 Batch 업데이트 작업 가능한번에 여러건을 INSERT하는 기능을 제공하는 것➡️여러 개의 SQL문을 하나의 배치로 묶어서 실행하는 기법대량의 데이터를 DB에 삽입, 업데이트, 삭제 해야할 경우에 사용장점 : DB 성능 향상 및 네트워크 비용 감소ex. 대용량 데이터 이전, 로그 처리 작업 등 ▶️실습 - DB에 배치작업 수행// 배..

Recording/멋쟁이사자처럼 BE 13기

[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_42일차_"SQL 기반 페이징 기법"

🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [42]일차🚀 이전 회고와 관련되어서 "오프셋 기반 페이징"을 정리해보고자 한다.Spring Data JDBC에 국한되지 않고 일반적인 SQL에 쓰이는 페이징 기법이어서회고를 별도로 정리해야겠다는 생각이 들었다.오프셋 기반 페이징Offset-based Pagination : SQL의 LIMIT과 OFFSET을 활용한 페이징 기법큰 OFFSET 값이 들어가면 스캔해야 할 데이터가 많아짐 (인덱스가 없을 경우)➡️페이지를 넘길수록 OFFSET 값이 커지면서속도가 느려짐다양한 페이징 기법 예시ex. 구글에서 페이지를 내리다보면 다음페이지를 눌러서 가는 것이 아닌 스크롤로 내림으로써페이지를 넘기는 방식처럼 구현이되어있다.➡️이러한 방식은 페이지에 해..

LEFT
'Recording/멋쟁이사자처럼 BE 13기' 카테고리의 글 목록