Blog Posts

[Spring Batch] 간단한 코드로 chunk 구조 쉽게 이해하기.

Spring Batch 에서 Tasklet을 사용하지않고, ItemReader, ItemProceesor, ItemWriter 를 사용한 Chunk 개념을 손쉽게 이해하기 위해 간단하게 구현해본 소스 아래 구현한 소스 외에도 Spring batch 에는 엄청 많은 기능들이 구현되어 있다.

Kafka CLI 사용하기

자주 사용 하는 Kafka CLI 명령어 모음.

Java Kafka Client 사용하기(Producer, Consumer)

java에서 Kafka client 를 사용하여 producer와 consumer 를 간단하게 구현해보자.

docker-compose 를 사용하여 kafka Cluster 및 Kafka Manger 세팅하기

로컬환경에서 간단하게 테스트할 목적으로 Single Broker 로 세팅할 경우 링크 를 확인해보자. 카프카 클러스터 관련해서 테스트 등을 진행하려고 Cluster 환경을 간단하게 구성하고, Kafka Manager를 추가하여, 손 쉽게 모니터링 할 수 있도록 구성했다.

Spring Bean에 대하여 - 1

Spring 에서 자주 이야기하고 사용하고 있는 @Bean 에 대해서 알아보자. 설정하는 법, Lifecycle, Scope 등을 알아보자

[PWA, Vue.js] Vue를 사용해서 PWA 를 만들어보자! -1

PWA 란? PWA : Progressive Web Applications Web Application 과 Native Application(IOS or Andorid 등) 기능 모두의 이점을 갖도록 개발된 웹 앱 여러 기술들이 사용됨. Service Worker Web App Manifest Lighthouse …. 기타 여러 기능(HTTPS 등)

Spring Boot 에서 MongoDB CRUD 만들기!

Spring Boot 에서 MongoDB CRUD 만들기!

Spring에서 mongo 에 데이터 추가시 생기는 class 에 대해서

Spring Boot 자동설정으로 mongo를 사용할 경우 _class 값이 저장되는 결과값에 추가 됨.

mongodb install in centos 7

mongodb install in centos 7 mongodb 4.2 를 설치할 예정

[Jackson]Custom Serializer, Deserializer 를 만들어 사용하기!

Custom Serializer, Deserializer 를 만들어 사용하기! 작업 중이 enum <-> string 또는 Date <-> string 등의 서비스에 맞춰서 변환작업이 필요할 경우가 있다. 그럴 경우 간단하게 작업해서 사용할 수 있다.

[Intellij] Command line is too long. Shorten command line for Application or also for Spring Boot default configuration.

Intelli J 에서 Spring Boot 빌드할려고 했더니… 아래와 같은 오류가 뜬다.

[JS] Array 내 item 제거하기!

javascript에서 array 내 item을 제거해야할 경우 splice()를 사용할 수 있다. 간단히 사용법을 알아보자

Centos 7 에 mysql 8.0 설치하기!

토이서버 포멧으로 인해, mysql 재설치 하면서 8.0도 사용해볼겸 작성함.

docker를 이용한 zookeeper 개발환경 구축하기

이전에 kafka를 사용하기 위해 zookeeper를 띄워본적은 있으나, 본격적으로 zookeeper를 사용해보기 위해 docker를 사용하여 local 개발환경을 구성해봄. docker 및 docker-compose 가 설치되어 있어야함.(참고링크)

[Webflux Tip] 4. webflux .map()에 null을 리턴하게 될 경우...

Webflux를 사용해서 개발하던 중 어처구니 없는 에러가 발생했다.

리눅스 root 계정 비밀번호 변경

root 로 접근 su 등의 방법으로 로그인 한다

HashMap Key에 Object를 잘~ 사용하고 싶다.

HashMap Key에 Object를 사용하고 싶을 때!

매번 헷갈리는 단어들을 정리해보자!

매번 개발하면서 헷갈려하는 단어들을 정리해보자!

Good Bye ATOM!!

atom 을 사용하다보면, 하나씩 plugin 을 설치하게되고, 그러다보면 굉장히 무거워진다. 답답해서 vsCode 로 넘어갔는데, 굉장히 쾌적함을 느끼고 사용하고 있다. 기존에 사용하던 atom 에 대한 모든 정보를 지워버리고 싶었음…..

docker-compose 를 사용하여 kafka 개발환경 구축해보기!

로컬 개발환경에서 사용할 목적으로 kafka를 docker로 설치하려고 한다. kafka는 zookeeper 를 같이 사용해줘야해서 docker-compose를 사용해야한다.

Spring Boot 다국어처리 with Thymeleaf

spring boot web에서 view template 인 thymeleaf를 사용할 경우, 다국어처리에 대한 방법을 공유합니다.

[Spring data jpa] tip 시리즈! - Enum 처리

Spring data jpa 를 사용하면서 얻은 팁들을 정리한 문서

Vue + jquery 사용하면서 삽질한 경험 -1

문제 Vue.js와 jquery를 혼용해서 사용하지 않는 것이 좋다고 생각하나… 업무 중에 필요한 부분이 있어서 개발하던 중에 문제가 발생했다. Vue.js의 mounted 내에 특정 dom에 jquery 이벤트를 바인딩함. dom 을 못찾음…? 응??? html 상단을 보던 중 v-if를 발견….

Service Instance Monitoring 하는 법

최근 msa 형태로 개발이 많이 진행되고, 각 서버에 들어가서 인스턴스 정보들을 확인하는 등 모니터링을 하는데, 번거로움이 크다. 이미 spring-boot-starter-actuator 라는 좋은 모니터링 정보들을 제공해주는데, 모아 보는 툴을 고민하던 중에 굉장히 좋은 툴 하나를 발견했다.(사실은 예전부터 사용했으나, 블로깅을 안해놓음)

[jdk 8]Stream GroupBy 사용하기.

데이터를 그룹핑해서 Map으로 리턴함. groupingBy() : Thread safe 하지 않음.

[Webflux Tip] 3. Webflux Error 처리!

Webflux Error 처리! doOnError() : 예외가 발생했을 경우, 특정 행위를 실행시킬 경우 사용 onErrorReturn : 예외가 발생했을 때 특정 값을 Return 함 onErrorResume : 예외가 발생했을 때 다른 Flux형태로 Return 함 onErrorContinue : 예외가 발생했을 때 멈추지 않고 해당 영역만 skip해서 동작함.

Cassandra CQL 추적하기

Cassandra CQL 추적하기 카산드라 전체에서 읽고 쓰는 과정을 추적할 수 있게 해줌.

[Vue.js] vue에서 refs를 사용하여 직접 접근하기

vue refs사용하기 다른 component 인스턴스에 직접 접근하려고 한다.

Jekyll 이중 중괄호 문제 해결

jekyll post에 vue 관련 내용을 포스팅 하던 중 문제 발생

Docker Stop 손쉽게 사용하기

Docker Stop 손쉽게 사용하기 shell script 등으로 docker 를 켜고 끄고를 만들 경우 docker stop 이라는 기능을 사용해야한다. docker stop ${container id} 위 방식이 아닌 name을 사용하는 방법