github action

\-> Actions 탭에 나타날 이름이다. (optional)\-> Actions 탭을 클릭하면 나오는 워크플로 실행 목록에 표시되는 이름 (optional)\-> 워크 플로우에 대한 트리거를 지정한다. push, branch 등 여러 이벤트로 트리거할 수 있다. c

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

kotlin constructor

primary constructor 에는 어떠한 code 도 들어갈 수 없다. 초기화하는 코드를를 넣고 싶은 경우 init() 을 사용해야한다. kotlin init() 생성자와 property 선언 및 초기화는 같은 우선순위를 가져 위에서부터 선언된 순서대로 수행된다

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

Project Reactor

Spring WebFlux 기반의 리액티브 애플리케이션을 제작하기 위한 핵심 역할이다. 리액티브 스트림즈의 구현체이다.Non-Blocking FluxN : Reactor 의 Publisher 타입 중 하나이다. N 개의 데이터를 emit 한다는 것이다. Mono0|1

2024년 5월 11일
·
0개의 댓글
·

리액티브 프로그래밍을 위한 사전지식

함수형 프로그래밍java8부터 람다 표현식이 도입되면서 함수형 프로그래밍 기법을 사용할 수 있게 되었다.기존 인터페이스와 달리 단 하나의 추상 메서드만 정의되어 있다.왜 이름을 굳이 함수형 인터페이스라고 부를까?함수형 프로그래밍 세계에서는 함수를 값으로 취급한다. 즉,

2024년 4월 13일
·
0개의 댓글
·

Blocking I/O, Non-Blocking I/O

운영체제 측면에서 컴퓨터 시스템이 외부의 입출력 장치들과 데이터를 주고받는 것을 의미한다. 웹 애플리케이션 측면에서는 ?파일 I/O, DB I/O ,, 네트워크 I/O!하나의 스레드가 I/O 에 의해서 차단되어 대기하는 것.문제점을 보완하기 위해 멀티스레딩 기법으로 차

2024년 4월 1일
·
0개의 댓글
·

hibernate 자동 entity 중복제거를 피하는 방법

하이버네이트6 부터 애플리케이션에서 entity가 자동으로 중복제거 된다. 회사에서 중복된 엔티티들을 조회하여 각 entity 의 counting 을 하는 작업을 하려고 했다. 그런데 엔티티들이 다 중복이 제거돼서 리턴됐다. 쿼리가 이상한건지 확인해보니, 직접

2024년 3월 28일
·
0개의 댓글
·

Stream API 와 OOM

Stream API는 함수형 프로그래밍 스타일을 지원하며, 중간 연산과 최종 연산을 사용하여 데이터를 스트림으로 처리하여 대용량 데이터를 효율적으로 처리할 수 있다.Stream API가 OOM를 해결하는 데 도움이 되는 특징은 다음과 같다.Lazy Evaluation중

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

Covering Index(Using index)

실행계획 분석에 Extra 컬럼에 "Using index" 가 표시될 수 있다.이 경우는 데이터 파일을 전혀 읽지 않고 인덱스만 읽어서 쿼리를 모두 처리할 수 있을 때 표시된다.인덱스를 이용해 처리하는 쿼리에서 가장 큰 부하를 차지하는 부분은 인덱스 검색에서 일치하는

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

Lombok 주의사항

Lombok 은 비슷한 코드들을 감소시켜 코드 양을 줄일 수 있는 Java 의 강력한 라이브러리이다. 하지만 자동으로 해주는 것이 많은 만큼 주의 사항도 있다. @AllArgsConstructor, @RequiredArgsConstructor 두 어노테이션은

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

MVCC

MVCC 란 ? Multi Version Concurrency Control 여기서 Multi Version 하나의 레코드에 대해 여러 개의 버전이 동시에 관리된다는 의미이다. MVCC 는 레코드 레벨의 트랜잭션을 지원하는 DBMS 가 제공하는 기능이고, 가장 큰 목적

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

String matches() method

"joy12\*\*\*3" 이라는 마스킹된 id 가 있다. 이런 경우, "joy12kkk3" 일수도 "joy12aaa3" 이 될 수도 있다. 이러한 여러 가지 경우의 수를 String matches 메서드로 쉽게 찾을 수 있다. 이 메서드는 주어진 정규 표현식과 일치하

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

Annotation Processor

Annotation Processor 는 소스 코드를 분석하여 특정 어노테이션이 적용된 요소들을 찾고, 이에 대한 추가적인 코드생성이나 변경을 수행한다. 개발자는 반복적이거나 일상적인 작업을 자동화하고, 코드의 가독성을 향상시키며, 코드의 일관성을 유지할 수 있다.

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

Safe Navigation Operator

Safe Navigation Operator 는 NullPointerException을 피하기 위해 사용되며, 그 기원은 Groovy 언어에 있다. 일반적으로 객체에 대한 참조가 있는 경우 해당 객체의 메서드나 속성에 액세스하기 전에 null인지 확인해야 할 수 있다.

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

spring batch 에서 특정 job 을 실행하는 방법

스프링 부트 어플리케이션을 실행하면 모든 잡이 실행된다. 특정 잡을 실행하기 위해서는 아래와 같이 설정을 해야한다. spring.batch.job.names = {job name} or ${job.name:NONE}// program argument or -Dspri

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