profile
do programming yourself
post-thumbnail

싱글 스레드의 강력함, IO Multiplexing

최근 Redis나 Node.js의 Event Loop 그리고 톰캣의 NIO 등, 최신 기술인데 싱글 스레드로 작동하는 것이 신기했다. 아무리 멀티 스레드의 Context Switching 같은 오버헤드가 크다 해도 요즘 발달한 CPU 스케줄링을 잘 활용하여 멀티 스레

2024년 9월 25일
·
0개의 댓글
·
post-thumbnail

자바 멀티쓰레드와 동시성 종류, 간단한 응용 코드 (기초)

📚자바 멀티쓰레드의 동시성을 해결하는 각 기능의 심화과정을 다루기 전에 가볍게 이용해보고 테스트를 통해 사용 방식을 익혀봅니다

2024년 8월 30일
·
0개의 댓글
·
post-thumbnail

ConcurrentModificationException과 for문 성능 개선

컬렉션 객체를 순회하면서 특정 값을 삭제하고 싶을 때 어떻게 처리할까컬렉션 객체에서 특정 값을 삭제하고 싶을 때향상된 for문ConcurrentModificationException 문제가 발생한다왜 동시성 문제일까? class 파일을 분석해보자향상된 for문 문법을

2024년 8월 29일
·
0개의 댓글
·
post-thumbnail

Git History 관리에 유용한 git rebase

git rebase란 무엇이며 왜 사용하는가?git rebase란?프로젝트를 깃으로 관리한다면, 브랜치 가지치기와 합치는 과정은 필수이다. 그리고 현재 브랜치를 다른 브랜치로 합치는 명령어는 merge 와 rebase 가 있다.git rebase와 merge의 차이me

2024년 8월 21일
·
0개의 댓글
·

NestJS 기본 공부

Nest JS는 Javascript의 프레임워크로, 웹 백엔드 개발을 용이하게 해주는 역할을 한다.Nest는 TS와 JS 모두 호환. 최신 언어 기능을 사용하기 위해 Javascript와 사용하려면 Babel 컴파일러가 필요.

2024년 8월 2일
·
0개의 댓글
·

도메인 모델 순수성 vs 도메인 모델 완전성 (DDD Trilemma)

예를 들어 사용자 이메일 변경위와 같이 도메인에 애플리케이션의 비즈니스 로직이 모두 포함되는 것을 풍부한 도메인(Rich Domain) , 완전한 도메인이라 부른다.

2024년 8월 2일
·
0개의 댓글
·
post-thumbnail

깃 협업에서 이슈(Issue)와 풀리퀘스트(PR)을 템플릿 (template)으로 관리하기

혼자 개발할 경우엔 깃 관리의 필요성이 체감되지 않는다.하지만 협업에선 적극적으로 표시할 수 있어야 원할한 팀워크가 진행된다.

2024년 3월 17일
·
0개의 댓글
·
post-thumbnail

윈도우 VSCode 기본 터미널 변경하는 방법 (How to Change a default terminal in Window Environment)

Powershell 기반의 Window 터미널을 쓰기엔 Linux 기반 명령어를 배우고, 앞으로도 사용할 일이 많기 때문에 바꾸고 싶었다.

2023년 9월 5일
·
0개의 댓글
·
post-thumbnail

Spring Boot With Redis CRUD Example

Redis는 Spring Data 가 지원하는 Key-Value 저장소 중 하나이다. 그리고 다른 NoSQL 들이 disk 나 SSD 에 저장하는 것과 달리

2023년 8월 31일
·
0개의 댓글
·
post-thumbnail

TestConfiguration 사용하기, @Configuration 과 차이

Test 에 사용할 클래스를 만들 때는 빈으로 주입 받거나, 객체로 직접 생성해야한다.

2023년 8월 29일
·
0개의 댓글
·
post-thumbnail

Sprint Data JPA 와 Querydsl 이용해서 Custom Repository 만들기

Spring Data Jpa 가 제공하는 기본 쿼리 메서드들 이외에도 복잡한 쿼리는 우리가 직접 작성해야할 일이 많다. 그렇다면 Service 에선 어떤 Repository 를 싱글톤으로 생성해야 할까?

2023년 8월 20일
·
0개의 댓글
·

Error creating bean with name 'querydslPredicateArgumentResolver'

에러 발생 원인 ❗Querydsl 빈을 생성하는데 문제가 발생했다

2023년 8월 20일
·
0개의 댓글
·

No qualifying bean of type 'com.querydsl.jpa.impl.JPAQueryFactory' available

에러 발생 이유 ❗JPAQuery 빈을 생성하기 위한 JPAQueryFactory 클래스를 찾지 못했다 내 코드에서 발생했던 문제

2023년 8월 20일
·
0개의 댓글
·

Test 에서 Lombok 사용

Gradle 5.4.1 이상 부터 보이는 오류

2023년 8월 19일
·
1개의 댓글
·
post-thumbnail

Notion 페이지 내 링크 (Anchor Link) 만들기

글 까지 써가며 정리할 기능은 아니라 생각할 수 있지만, 요즘 노션을 자주 작성하면서 긴 페이지를 보기 쉽게 정리하고 싶었다. 원하는 블럭 위치로 링크를 걸어서 바로 내용을 볼 수 있도록 실습해보자!1\. "MyBatis 적용" 을 클릭시 MyBatis 적용 블럭 위치

2023년 8월 14일
·
0개의 댓글
·
post-thumbnail

Java annotations 이란? 동작 원리 설명 + 활용 (커스텀 어노테이션)

이 글의 목표 🚩 annotation 이 무엇인지, 어떻게 작동하는지 이해 annotation 속성 공부 annotation 커스텀 해보기

2023년 8월 13일
·
0개의 댓글
·
post-thumbnail

Java JMH 라이브러리를 활용한 성능테스트

실행 환경 Gradle 7.5Java 17IntellijMaven 으로 설정한 JMH 는 많이 보였기 때문에 Gradle 로 진행했습니다어떤 자바 메서드를 개선했다고 가정했을 때, 이를 메서드 단위로 수치화하여 어느 정도의 개선이 이루어졌는지 계산해야한다. 이를 가능

2023년 8월 9일
·
3개의 댓글
·

innerHtml 사용시 event listener 사라짐 해결

innerHtml 사용시 주의할 점

2023년 7월 12일
·
0개의 댓글
·

[Spring Error] - Class HttpMediaTypeNotAcceptableException, 406 Not Acceptable

발생한 문제 🚩 > Http 응답을 생성하는 과정 중에 요청 한 클라이언트에서 받지 못하는 데이터 타입을 반환하려 할 때 발생하는 오류! 문제였던 부분 반환하는 값이 Response DTO였는데, 이 곳에 Getter 메서드가 없었기 때문에 HttpMessageCo

2023년 7월 10일
·
0개의 댓글
·

InvalidDataAccessApiUsageException: org.hibernate.TransientPropertyValueException 문제

프록시 객체 초기화 문제

2023년 7월 6일
·
0개의 댓글
·