전체 글76 [자바의 정석] 변수 자바의 정석 독학부터 학원의 스프링 프로젝트까지 모두 Java란 언어로 진행했는 데 정작 중요한 자바에 대해 잊고 살았던 거 같다. 기본을 다시 잡자는 의미로 자바의 정석을 1편부터 정주행할 예정이다. 나만의 공부 정리글이라 중구난방일 수 있으니 참고바란다. 변수(variable)프로그래밍언어에서의 변수란, 값을 저장할 수 있는 메모리상의 공간을 의미한다.단 하나의 값을 저장할 수 있는 메모리 공간. 변수의 선언과 초기화변수를 사용하려면 먼저 변수를 선언해야하는데, 변수의 선언방법은 다음과 같다.int age; // age라는 이름의 변수를 선언 변수타입변수에 저장될 값이 어떤 '타입'인지를 지정하는 것저장하고자하는 값의 종류에 맞게 변수의 타입을 선택해서 적어주면 된다.정수형, 실수형, 문자형 등 다양.. 2024. 5. 3. 자바 ORM 표준 JPA 기본편 - 값 타입 JPA의 최상위 데이터 타입 분류JPA는 데이터 타입을 최상위 레벨로 보면 두가지로 나뉜다.엔티티 타입과 값타임1. 값 타입int, Integer, String처럼 단순히 값을 사용하는 자바 기본 타입이나 객체식별자가 없고 값만 있으므로 변경시 추적이 불가하다.2. 엔티티 타입 (내장타입)새로운 값 타입을 직접 정의할 수 있음JPA는 임베디드 타입이라 함주로 기본 값 타입들을 모아서 만들어서 복합 값 타입이라고도 함값 타입의 분류1. 기본값 타입자바 기본 타입 (int, double 등..)래퍼 클래스 (Integer, Long 등..)String- 기본 타입은 항상 값을 복사한다- Integer같은 래퍼 클래스나 String 같은 특수한 클래스는 공유 가능한 객체이지만 변경이 불가하다2. 임베디드 타.. 2024. 4. 28. 자바 ORM 표준 JPA 기본편 - 영속성 전이 영속성 전이: CASCADE 특정 엔티티를 영속 상태로 만들 때 연관된 엔티티도 함께 영속 상태로 만들고 싶을 때 사용한다.ex) 부모 엔티티를 저장할 때 자식 엔티티도 함께 저장영속성 전이: CASCADE - 주의!영속성 전이는 연관관계를 매핑하는 것과 아무 관련이 없다엔티티를 영속화할 때 연관된 엔티티도 함께 영속화하는 편리함을 제공할 뿐이다 CASCADE의 종류ALL: 모두 적용PERSIST: 영속REMOVE: 삭제MERGE: 병합REFRESH: REFRESHDETACH: DETACH 언제 쓰느냐?하나의 부모가 자식들을 관리할 때 의미가 있다.ex) 게시판과 첨부파일의 관계쓰면 안되는 케이스) 파일을 여러 엔티티에서 관리하면 쓰면 안된다.Child의 고유한 Parent를 가지고 있을 때만 사용(단일.. 2024. 4. 24. 자바 ORM 표준 JPA 기본편 - 프록시와 연관관계 관리 프록시란?실제 엔티티 객체 대신 데이터베이스 조회를 지연할 수 있는 가짜 객체를 의미. 실제 객체를 사용하면 편한데 가짝 객체인 프록시를 쓰는 이유가 뭘까?한 예시를 보고 알아보도록 하겠다. Member를 조회할 때 Team도 함께 조회해야 될까? JPA 관점에서 멤버와 팀을 동시에 조회하는 것은 멤버와 그들의 팀 정보를 함께 출력해야 할 때 유리하지만, 멤버 정보만 필요로 하는 상황에서는 자원의 낭비가 발생할 수 있다.-> 이러한 문제는 프록시를 이용한 지연 로딩 방식으로 해결이 가능하다! 프록시 기초em.find() vs em.getReference()em.find() : 데이터베이스를 통해서 실제 엔티티 객체를 조회em.getReference() : 데이터베이스 조회를 미루는 가짜(프록시) 엔티티 .. 2024. 4. 17. [Docker] 쿠버네티스 기본 개념 / github action 사용해서 ecr 에 업로드하기 오늘은 온보딩 강의 마지막 날이다 2주동안 3시간씩 진행하는 수업이었는데 벌써 끝이라니... 그러면 바로 학습한 것들 정리 시작하겠다! 쿠버네티스란? 컨테이너화된 애플리케이션의 자동 배포, 확장, 운영을 위한 오픈소스 플랫폼 서버의 한계에서부터 생각해보자...🤔 통상적으로 물리적인 서버 한 대에 도커가 설치 되어있고, 이를 통해 여러 애플리케이션을 운영하고 있다. 초기에는 이 구성만으로도 충분할 수 있지만, 사용자 수가 증가하면 서버의 리소스가 부족해지기 시작할 거고,이에 대응해야 하는 때가 분명히 올 것이다. 그러면 우리는 어떻게 대응을 해야 할까? 이러한 상황에서 우리는 크게 두 가지 방법, 스케일 업(Scale Up)과 스케일 아웃(Scale Out)을 고려할 수 있다. 뒤에서 자세히 설명하겠지만 .. 2024. 4. 15. 자바 ORM 표준 JPA 기본편 - 고급매핑 상속관계 매핑 객체의 상속 구조와 데이터베이스의 슈퍼타입 서브타입 관계를 매핑해주는 것 객체는 상속관계가 있다, 관계형 데이터베이스는 상속 관계가 없다. 슈퍼타입, 서브타입 관계라는 모델링 기법이 객체 상속과 유사하다. 슈퍼타입 서브타입 논리 모델을 실제 물리 모델로 구현하는 방법 각각 테이블로 변환 ㅡ> 슈퍼타입, 서브타입 테이블을 각각 생성하여 조회할 때 조인을 사용. 조인 전략 통합 테이블로 변환 ㅡ> 테이블을 하나만 사용하여 통합. 단일 테이블 전략 서브타입 테이블로 변환 ㅡ> 서브 타입마다 하나의 테이블을 생성. 구현 클래스마다 테이블 전략 주요 어노테이션 @Inheritance(strategy=InheritanceType.XXX) JOINED: 조인 전략 SINGLE_TABLE: 단일 테이블 .. 2024. 4. 12. 이전 1 2 3 4 5 6 ··· 13 다음