Home
LeeSeoJune
Cancel

Swarmpit

Swarmpit이란? 📌 정의 Docker Swarm을 관리하기 쉽게 GUI형태로 확인할 수 있는 도구이다. ♻ Auto Deploy Swarmpit의 Service에서 DEPLOYMENT탭을 들어가보면 Autoredeploy가 있는데, 이는 주기적으로 도커 이미지가 업데이트되었는지 확인하는 것인데, 해당 해시값과 현재 이미지의 해시값을 비교해...

GC구동원리

GC(Garbage Collector) 구동원리 [TOC] GC란? 유효하지 않은 메모리인 가비지가 발생하게 된다. C언어를 이용하면 free()라는 함수를 이용해서 직접 메모리를 해제해주어야한다. 하지만 Java를 이용해 개발을 하면 개발자가 메모리를 직접 해제해주는 일이 없다. JVM의 가비지 컬렉터가 불필요한 메모리를 알아서 정리해주기 때문...

S3의 인증서가 올바르지 않다고 뜰 때 해결법

S3의 인증서가 올바르지 않다고 뜰 때 해결법 🎊 시작하기 전에.. 이 문제는 Spring Boot에서 Aws S3 SDK를 사용하면서, GeneratePresignedUrlRequest를 이용해 링크를 생성할 때 발생한 문제입니다. 🐛 문제상황 크롬기준으로 err_cert_common_name_invalid가 발생하며, 인증서가 올바르지 않다...

IoC vs Factory Pattern

IoC vs Factory Pattern 😵 차이점 Factory Pattern을 쓰면 해당 객체가 Factory에 강한 의존성을 가지게 된다. 즉, 해당 객체에서 Factory를 호출해야한다. class Button { private final Lamp lamp = Factory.getLamp(); } 하지만, IoC Containe...

@PrimaryKeyJoinColumn이란

@PrimaryKeyJoinColumn이란? 📌 정의 JPA 1.0에서는 OneToOne관계 또는 ManyToOne관계에서 Id를 사용할 수 없었으므로 사용했던 것이 @PrimaryKeyJoinColumn이다. @Id + @JoinColumn과 @PrimaryKeyJoinColumn은 유사하다. 하지만, 앞에서 쓴 방식(Id + JoinColum...

Refrence Type과 Value Type의 차이점

Reference Type과 Value Type의 차이점 😵 차이점 Reference Type은 복사를 했을 때 주소가 복사된다. 즉, 얕은 복사가 진행된다. Value Type은 복사를 했을 때 값이 복사된다. 즉, 깊은 복사가 진행된다.

Querydsl 기본 세팅

Querydsl 기본 세팅 1️⃣ build.gradle에서 세팅 buildscript { ext { queryDslVersion = "4.4.0" } } implementation "com.querydsl:querydsl-jpa:${queryDslVersion}" annotationProcessor( "javax.persistenc...

Innerjoin과 where의 차이

Innerjoin과 Where의 차이 명확성, 의도를 보여주기 좋음 Join은 관계에 관한 것이고, Where는 Filter, Filter는 전체를 분할하는 것 🎊 시작하기 전에… 우선, 이 생각을 하게 된 계기는 갑자기 Inner Join은 Where를 사용한 것과 같은 결과를 보이는데 왜 Inner Join을 사용해야할까? 라는 궁금증이 생...

TCP vs UDP

TCP vs UDP 1️⃣ TCP(Transmission Control Portocol) TCP는 인터넷상에서 데이터를 메세지의 형태로 보내기 위해 IP와 함께 사용하는 프로토콜 특징 연결형 서비스로 가상 회선 방식을 제공한다. 3-way handshaking과정을 통해 연결을 설정하고 4-way handshaking을 통해 해제한다....

Q-Class를 만드는 이유

Q-Class를 만드는 이유 📑 어디서 만들까? 컴파일 시점에 JPAAnnotationProcessor가 @Entity, @Embeddable같은 Annotation을 찾고, 해당 Annotation이 붙어있는 class를 분석해서 Q-Class를 생성한다. ❓ 왜 만들까? Entity class에서 property에 접근하려면 객체를 생성해서...