profile
Hi there!
post-thumbnail

[JPA] JPQL - 페치조인 (fetch join), @Batchsize, 벌크연산

페치조인(fetch join) - SQL 조인의 종류가 아니라, JPQL에서 성능최적화를 위해 제공하는 기능이다. 벌크연산 - 연관된 엔티티나 컬렉션을 SQL 한번에 함께 조회하는 기능이다.쿼리 한번으로 여러 테이블(엔티티)의 로우를 변경한다.

2022년 7월 24일
·
0개의 댓글
·
post-thumbnail

[JPA] JPQL - 기본문법, 프로젝션, 페이징API, 서브쿼리, 조건식

JPQL 이란?? JPA가 제공하는 SQL을 추상화한 객체지향 쿼리 언어이다. 엔티티 객체를 대상으로 하는 쿼리이다. SQL을 추상화해서 특정 데이터베이스 SQL에 의존하지 않는다. JPQL은 결국 SQL로 변환된다. 한마디로 정의하면 객체지향 SQL 이다.

2022년 7월 10일
·
0개의 댓글
·
post-thumbnail

[JPA] 데이터타입분류 - 엔티티 타입, 값 타입 (기본 , 임베디드 , 컬렉션)

엔티티 타입 - @Entity 로 정의하는 클래스 객체를 의미한다. 데이터가 변해도 식별자로 지속해서 추적이 가능하다. 값 타입 - int,String처럼 단순히 값으로 사용하는 자바 기본 타입이나 객체를 의미한다. 식별자가 없고 값만 있으므로 변경시 추적이 불가능하다

2022년 7월 6일
·
0개의 댓글
·
post-thumbnail

[JPA] 프록시 Proxy & LAZY,EAGER 로딩, 영속성 전이 CASCADE

실제 클래스를 상속받아 만들어져서, 실제 클래스와 겉모양이 같다. 사용하는 입장에서는 진짜 객체인지 프록시 객체인지 구분하지않고 사용하면 된다. 프록시 객체는 실제 객체의 참조(target)을 보관하고있다.

2022년 7월 3일
·
0개의 댓글
·
post-thumbnail

[JPA] 상속관계매핑, @MappedSuperclass

관계형 데이터베이스는 상속관계가 없지만, 슈퍼타입 서브타입 관계의 모델링 기법이 객체 상속과 유사하다. 즉, 상속관계 매핑은 객체의 상속 구조와 DB의 슈퍼타입 서브타입관계를 매핑하는 것이다.

2022년 6월 29일
·
0개의 댓글
·
post-thumbnail

[JPA] 연관관계 매핑 (다대일 N:1 ,일대다 1:N , 일대일 1:1)

다대일 단방향 [N:1] - 가장 많이 사용하는 연관관계로, 외래키가 있는곳을 기준으로 연관관계를 매핑하면된다. 일대다 단방향 [1:N] - 일(1)이 연관관계의 주인인데, 테이블에서 다(N)쪽에 외래키가 있다.

2022년 6월 25일
·
0개의 댓글
·
post-thumbnail

[JPA] 연관관계 매핑 (단방향/양방향, 연관관계 주인)

객체지향 설계의 목표는 자율적인 객체들의 협력 공동체를 만드는 것이다. 객체를 테이블에 맞추어 데이터 중심으로 모델링하면, 협력관계를 만들 수 없다.

2022년 6월 23일
·
0개의 댓글
·
post-thumbnail

[JPA] 엔티티 매핑 (Entity Mapping)

@Entity : JPA가 관리하는 엔티티이다. JPA를 사용하여 테이블과 매핑할때 사용한다. @Table, @Id, @GeneratedValue, @Column

2022년 6월 21일
·
0개의 댓글
·
post-thumbnail

[JPA] 영속성 관리 & 영속성 컨텍스트(Persistence Context)

EntityManagerFactory에서 고객이 요청할때마다 EntityManager를 생성하고,이 엔티티매니저는 내부적으로 DB의 커넥션을 사용하여 DB를 사용한다.

2022년 6월 18일
·
0개의 댓글
·
post-thumbnail

[JPA] JPA란?? 왜 JPA를 사용하는가??

JPA(Java Persistence API)는 자바 진영에서ORM 기술 표준으로 사용되는 인터페이스의 모음이다.즉, 실제로 구현된것이 아니라, 클래스와 매핑을 해주기 위해 사용되는 프레임워크이다.

2022년 6월 14일
·
0개의 댓글
·
post-thumbnail

[OS] 프로세스 vs 스레드 (Process vs Thread)

프로세스는 각각 독립된 메모리영역 (Code, Data, Stack, Heap 의 구조)을 할당 받는다. 기본적으로 프로세스당 최소 1개의 스레드( 메인 스레드)를 가지고 있다.

2022년 6월 9일
·
0개의 댓글
·
post-thumbnail

[Spring] 스프링 싱글톤 & 프로토타입

순수한 DI 컨테이너는 요청을 할때마다 객체를 새로 생성해서 메모리 낭비가 심각해진다.→ 해당 객체를 1개만 생성하고 공유하도록 설계한다 (싱글톤 패턴)스프링 컨테이너는 싱글톤 패턴의 문제점을 해결하면서, 객체 인스턴스를 싱글톤(1개만 생성)으로 관리한다.스프링 컨테이

2022년 4월 28일
·
0개의 댓글
·
post-thumbnail

[Spring] 스프링 컨테이너 & 빈 Bean

ApplicationContext를 ‘스프링 컨테이너’라고 하고, 인터페이스이다.스프링 컨테이너는 @Configuration 이 붙은 클래스를 파라미터로 받아서, 설정(구성) 정보로 사용한다

2022년 4월 18일
·
0개의 댓글
·
post-thumbnail

[STS] Mac STS3 설치 및 오류해결(Failed to create the Java Virtual Machine)

오늘 다뤄볼 주제는 Mac에서 STS 설치 및 오류시 해결방법입니다! 현재 STS의 최신버전은 STS4이지만, 이전버전인 STS3 을 다운받고 설정하는 방법을 알아보겠습니다.

2022년 1월 15일
·
4개의 댓글
·
post-thumbnail

AWS RDS와 EC2 연결하기

AWS의 RDS 와 EC2를 연결하는 장에서 책을 따라가면서버전차이인지 모르겠지만 책과는 다른부분이 있었습니다.구글링도 하고 비슷한 이슈를 가진 사람들을 찾아보면서 잘 해결했는데,학습하면서 생겼던 이슈들로 인해 책이랑 조금 다르게 해결한 부분을 정리해놓으려 합니다!!

2022년 1월 10일
·
0개의 댓글
·
post-thumbnail

AWS 서버 환경설정 & 아마존 리눅스2 설정 & SSH 접속

AWS 회원가입 → EC2 인스턴스 생성하기 → EIP 할당 → 인스턴스 연결 → EC2 서버 접속인스턴스 : EC2 서비스에 생성된 가상머신이다.AMI (Amazon Machine Image) : EC2 인스턴스를 시작하는데 필요한 정보를 이미지로 만들어 둔 것이다.

2022년 1월 3일
·
0개의 댓글
·
post-thumbnail

[SpringBoot] 등록/수정/조회 API 만들기

@Entity : 테이블과 링크될 클래스임을 나타낸다.@Id : 해당 테이블의 PK필드@GeneratedValue : PK의 생성규칙(GenerationType.IDENTITY 옵션을 추가해야 auto_increment가 된다. (자동으로 1,2,3...)@Column

2021년 12월 31일
·
0개의 댓글
·
post-thumbnail

[SpringBoot] JPA, ORM, SpringData JPA

Java에서 ORM(Object-Relational Mapping) 기술 표준으로 사용되는 인터페이스의 모음이다.그 말은 즉, 실제적으로 구현된것이 아니라 구현된 클래스와 매핑을 해주기 위해 사용되는 프레임워크이다.JPA를 구현한 대표적인 오픈소스로는 Hibernate

2021년 12월 25일
·
0개의 댓글
·
post-thumbnail

[Spring] DI & IoC (의존성 주입 & 제어의 역전)

DI란 스프링이 다른 프레임워크와 차별화되어 제공하는 의존성 관계 주입 기능이다.객체를 직접 생성하는 것이 아닌 외부에서 생성한 후 주입시키는 방식이다.모듈간의 결합도가 낮아지고 그로인해 유연성이 높아지며 유지보수가 용이해진다.방법 1. new 생성자를 통해 객체를 직

2021년 12월 23일
·
0개의 댓글
·
post-thumbnail

[Spring Boot] 스프링부트 실행하기

@SpringBootConfiguration + @EnableAutoConfiguration + @ComponentScan 의 역할을 한다.스프링부트의 자동설정, 스프링 Bean읽기, 생성을 자동으로 설정해준다.SpringBootApplication이 있는 위치부터 설

2021년 12월 20일
·
0개의 댓글
·