목록전체 글 (83)
딸기말차
엔코아 플레이데이터(Encore Playdata) Backend 2기 백엔드 개발 부트캠프 (playdata.io) 백엔드 개발 부트캠프 백엔드 기초부터 배포까지! 매력있는 백엔드 개발자 포트폴리오를 완성하여 취업하세요. playdata.io 1. Thymeleaf 1. 특징 1. 서버 사이드 HTML 렌더링 (SSR) 2. natural templates 3. 스프링 통합 지원 2. 서버 사이드 HTML 렌더링 (SSR) ? 타임리프는 백엔드 서버에서 HTML을 동적으로 렌더링 하는 용도로 사용된다. 3. 네츄럴 템플릿 (natural templates) ? 타임리프는 JSP와 달리 순수 HTML을 최대한 유지하는 특징이 있다. 타임리프로 작성한 파일은 HTML을 유지하기 때문에, 웹 브라우저에서 파일..
엔코아 플레이데이터(Encore Playdata) Backend 2기 백엔드 개발 부트캠프 (playdata.io) 백엔드 개발 부트캠프 백엔드 기초부터 배포까지! 매력있는 백엔드 개발자 포트폴리오를 완성하여 취업하세요. playdata.io 1. Spring Data JPA 우리가 JPA를 통해 개발을 진행하다보면 반복적으로 사용하는 CRUD 메서드가 존재한다. 때문에 Spring Data JPA는 자주 반복되는 CRUD 기능을 추상화하여, 인터페이스를 통해 구현체를 제공한다. 즉, Spring Data JPA는 메서드 이름을 분석해서 JPQL을 생성하고, 실행한다. 1. Spring Data JPA 를 통해 JPQL을 생성하는 방법 1. 메서드 이름을 통한 쿼리 생성 2. 메서드 이름을 통해 Name..
엔코아 플레이데이터(Encore Playdata) Backend 2기 백엔드 개발 부트캠프 (playdata.io) 백엔드 개발 부트캠프 백엔드 기초부터 배포까지! 매력있는 백엔드 개발자 포트폴리오를 완성하여 취업하세요. playdata.io 1. 상속 관계 매핑 관계형 DB는 상속 관계가 존재하지않는다. 슈퍼타입 - 서브타입 관계라는 모델링 기법이 객체 상속과 유사하긴 하지만, 객체의 상속과는 다르다. 즉, 상속 관계 매핑이란 객체의 상속구조와 DB의 슈퍼타입 - 서브타입 관계를 매핑하는 것을 의미한다. 1. 상속 관계 매핑 전략 전략 어노테이션은 부모테이블에 붙여서 사용한다. 1. 조인 전략 -> 각각 테이블로 변환 (@Inheritance(strategy = InheritanceType.JOINED..
엔코아 플레이데이터(Encore Playdata) Backend 2기 백엔드 개발 부트캠프 (playdata.io) 백엔드 개발 부트캠프 백엔드 기초부터 배포까지! 매력있는 백엔드 개발자 포트폴리오를 완성하여 취업하세요. playdata.io 1. 연관 관계 매핑 객체를 테이블에 맞추어 데이터 중심으로 모델링하면, 객체 간 협력 관계를 만들 수 없다. 대표적인 예로, 테이블은 외래 키로 조인을 사용해서 연관된 테이블을 찾는다. 반면 객체는 참조를 사용해서 연관된 객체를 찾는다. 완전하진 않지만 이러한 차이를 극복하기 위해 JPA는 연관 관계 매핑을 사용한다. 1. 연관 관계 매핑 시 고려사항 1. 다중성 2. 단방향, 양방향 3. 연관 관계의 주인 2. 다중성 1. [N : 1] (다대일) : @Many..
엔코아 플레이데이터(Encore Playdata) Backend 2기 백엔드 개발 부트캠프 (playdata.io) 백엔드 개발 부트캠프 백엔드 기초부터 배포까지! 매력있는 백엔드 개발자 포트폴리오를 완성하여 취업하세요. playdata.io 1. 단위 테스트 (Unit Test) 1. 단위 테스트 ? 기능을 개발 후 문제가 있는지 없는지 확인하려면 어플리케이션을 띄우고, 직접 요청하거나 Swagger 등 툴을 사용해서 테스트를 진행해야 한다. 이 때 문제는 이 과정이 생각보다 많은 시간을 잡아 먹는다는 것이다. 반면 단위 테스트는, 서버를 띄워서 요청을 직접 보내고 로그나 화면의 동작을 확인할 필요 없이 오직 테스트 코드만 작성해서 실행해보면 해당 기능이 정상적으로 동작하는지 확인 할 수 있다. 즉, ..
엔코아 플레이데이터(Encore Playdata) Backend 2기 백엔드 개발 부트캠프 (playdata.io) 백엔드 개발 부트캠프 백엔드 기초부터 배포까지! 매력있는 백엔드 개발자 포트폴리오를 완성하여 취업하세요. playdata.io 1. EntityManagerFactory 클라이언트의 요청이 올때마다 엔티티 매니저 팩토리가 엔티티 매니저를 생성하여, 엔티티 매니저가 내부적으로 DB 커넥션 풀을 통해 DB 를 사용하게 된다. EntityManagerFactory는 여러 스레드에서 동시에 접근해도 안전하지만, 생성하는 비용이 상당히 크다. 때문에 클라이언트의 요청이 올 때마다 생성 비용이 거의 없는 EntityManager를 생성해 사용한다. 이 때 만들어진 EntityManager는 내부적으로..