Back-end

· 블록체인
1. 개요요즘 회사에서 블록체인을 개발하고 있는데 (Solidity 아님. 블록체인 관련 백엔드 개발..!) 블록체인을 접해보니 흥미가 생겨 집에서도 Besu Network를 구축하여 간단하게 개발하고 싶어서 포스팅하게 됐다! 두서 없지만.. 잘 봐주길 바란다!(설치 방법은 다른 블로그에도 충분히 잘 설명해주신 분들이 많으니, 참고!)    2. 환경세팅2-1. Docker블록체인 네트워크를 구성하기 위해선 Docker 환경에서 진행해야한다고 한다. 그 이유는 Besu 블록체인 노드를 손쉽게 실행하고 네트워크를 관리하기 위해 사용한다.Besu는 컨테이너화된 형태로 제공되기 때문에, Docker를 통해 네트워크를 빠르게 설정하고 관리할 수 있다. 우선 Docker Desktop / Docker-Compos..
1. 개요JPA 프로젝트를 진행하며 한가지 의문이 들었다. 'fetch = FetchType.EAGER' 와 'fetch-join (@Entity-graph)' 둘 다 진짜 객체를 한번에 조회할 수 있도록 하는 것인데.. 왜 'fetch-join (@Entity-graph)'의 성능이 더 좋은 것일까? 이 의문을 풀기 위해 공부한 내용을 포스팅 하려한다.   2. 공통점두 개념은 모두 가짜 객체를 사용하지 않고, 엔티티를 조회할때 모두 진짜 객체로 가져와 한꺼번에 조회할 수 있도록 하는 기능을 가진다.   3. 차이점 이 둘의 차이점이 이번 포스팅의 핵심 내용이 될 것이다. 차이점을 하나하나 살펴보자.  3-1. fetch = FetchType.EAGER이 코드는 엔티티 클래스 내부의 연관관계 어노테이션..
1. 서론필자는 전 직장에서 개발업무를 하였지만, 올드하고 단순한 기술스택으로 성장이 멈춰있는 상태였다. 그래서 실제 배포를 목적으로 하는 B2C 서비스 (백엔드 어플리케이션)를 사이드 프로젝트로 진행하고 있는데, 실무 레벨의 코드와 개발 지식, 대용량 트래픽 처리 등을 마주할 수 있는 환경이 아니었고, 그로 인해 성능을 고려하지 못한 프로젝트를 진행하고 있었다. 그러다 우연히 판교에 갈 일이 생겼는데, 그 때 보았던 if kakao 2024 홍보 포스터... 빅테크 개발자들의 개발 문화와 지식을 배워갈 수 있는 좋은 기회가 될 것 같아 신청했다.   2. 본격적인 후기신청 후 약 2주 뒤 if kakao 알림톡으로 참가확정 톡이 왔다.원래 이런거 신청하면 진짜 당첨 안되는 편인데.. 이번엔 운이 정말 ..
1. 개요게시판 조회 쿼리(네이티브 쿼리)를 작성하고 여러 ROW 건수를 DTO를 활용하여 리턴할 때 마주한 에러이다. 이 에러를 해결한 사례를 포스팅한다. 2. 원인쿼리 조회 결과와 DTO 간의 매핑이 제대로 되지 않아 생긴 오류이다. 3. 해결방법네이티브 쿼리를 사용하고, 다중 건수의 DTO로 리턴하기 위해선 DTO를 class로 만들지 않고, interface로 생성한다.// as-is@Data@NoArgsConstructorpublic class MyDto { private String A; private String B; // ... }// to-bepublic interface MyDto { String getA(); String getB(); ..