Posts by Category

java

Netflix DGS로 GraphQL 해보기

5 minute read

DGS는 “Domain Graph Service”의 약어이고, GraphQL 기반 마이크로서비스 아키텍처에서 사용되는 자바 기반 프레임워크인데 회사에서 DGS Federation(여러 개의 GraphQL 서비스를 하나의 GraphQL 엔드포인트로 노출시키는 방식)을 하기 위해 각...

fastexcel로 streaming download 해보기

4 minute read

개발하고있는 서비스에 대량의 데이터를 엑셀로 다운로드해야하는 API가 필요하여 알아보던 중 아래와 같은 목표를 가지고 방법을 찾게되었다.

feign client 사용해보기

5 minute read

Feign은 Http Client 도구인데 example을 보는 순간 직관적인 형태에 끌려 사용해보게 되었다. (RestTemplate, WebClient 등을 쓰다가 Feign을 써보게 되면 Feign만 쓰게될꺼다) Feign은 인터페이스와 annotation을 이용하여 아주 간...

Spring boot Timezone 설정하기

1 minute read

로컬에서는 분명히 적상적으로 작동을 했는데 서버 올라갔을 때 비정상으로 작동하여 원인을 확인해 보니 타임존 문제였다.

TestContainers로 test 멱등성 높이기

3 minute read

h2 in-memory db에서 테스트를 하였는데 뭔가 이상했다. production환경에서 사용중인 mariadb로 배포 전에 혹시나 해서 테스트해보기 위해 로컬에서 docker로 mariadb를 띄워서 테스트를 했을 때와 결과가 달랐다….

spring boot에서 aws kms를 이용해 프로퍼티값 암호화 하기

3 minute read

프로퍼티에 db 연결정보나 api key같은 정보가 그대로 들어갔다가 git 계정이 털리는 등 소스를 탈취 당하게 됬을 경우 아주 곤란해 질 수 있다. 보안이 필요한 값들은 애초에 암호화 해주면 그런 걱정을 덜 수 있겠다. AWS KMS를 이용해서 spring boot 프로젝트의 ...

Back to Top ↑

deploy

Back to Top ↑

jpa

JPA 비관적 잠금(Pessimistic Lock)

3 minute read

비관적 잠금(Pessimistic Lock) 이란? 선점 잠금이라고 불리기도 함 트랜잭션끼리의 충돌이 발생한다고 가정하고 우선 락을 거는 방법 DB에서 제공하는 락기능을 사용

JPA 낙관적 잠금(Optimisstic Lock)

3 minute read

낙관적 잠금(Optimistic Lock) 이란? 비선점 잠금이라고 불리기도 함 현실적으로 대부분의 트랜잭션이 충돌이 발생하지 않는다고 낙관적으로 가정하고 잠금 트랜잭션을 커밋하기 전까지는 트랜잭션의 충돌을 알 수 없음 Application Level에서의 잠금 ...

Back to Top ↑

kotlin

Back to Top ↑

db

db character set 바꾸기

1 minute read

Spring 어플리케이션에서 maria db의 varchar type의 컬럼에 이모티콘(🍯)을 insert하려 했더니 SQLDataException Incorrect string value: '\xF0\x9F\x8D\xAF'.... 요런 에러가 발생했다. 저 이상한 형식의 str...

Back to Top ↑