2023-01-15-TIL TIL 2023-01-15-TIL Today I Learned Spring 트랜잭션 매니저와 @Transactional의 동작 원리, 파일 업로드 API 설계 방식을 정리했다. 객체를 로그로 남기는 문제에서 출발해 JSON 변환, ToStringBuilder, ObjectMapper의 스레드 안전성, 자바 직렬화까지 이어서 찾아봤다. Transact... 2023/01/15 2023-TIL
2023-01-13-TIL TIL 2023-01-13-TIL Today I Learned JPA 연관관계를 어디까지 매핑할지, 매핑한다면 어떤 방식이 안전하고 성능에 유리한지를 찾아봤다. JPA Association Pros and Cons 연관관계를 엔티티 참조로 매핑하면 객체 그래프 탐색과 JPQL 조인이 편해지고, 영속성 전이(cascade)나 고아 객체 제거 같은 기... 2023/01/13 2023-TIL
2023-01-12-TIL TIL 2023-01-12-TIL Today I Learned 컨트롤러가 아닌 곳에서 현재 요청 객체를 얻는 방법, 자바 직렬화, ACL, Firebase Admin SDK의 FirebaseApp, 그리고 쿠버네티스 없이 한 인스턴스에서 여러 컨테이너를 운영하는 방법을 정리했다. How to Get HttpServletRequest in Any Me... 2023/01/12 2023-TIL
2023-01-11-TIL TIL 2023-01-11-TIL Today I Learned Docker의 Wasm 지원 소식에서 WebAssembly를 다시 보고, 고루틴, 코루틴, Java 19 가상 스레드를 비교했다. 동기·비동기와 블로킹·논블로킹의 차이, 파일 업로드 API 설계, 선분이력, AWS KMS도 함께 정리했다. Docker + Wasm Docker는 2022... 2023/01/11 2023-TIL
2023-01-10-TIL TIL 2023-01-10-TIL Today I Learned 요청 로깅과 클라이언트 정보 추출을 중심으로 Servlet API, Logback, Spring AOP를 정리했다. 그 밖에 M1 Mac의 Netty DNS 경고, Spotify 아키텍처 사례, ERD 도구를 찾아봤다. Get Empty String When Null Objects.to... 2023/01/10 2023-TIL
2023-01-09-TIL TIL 2023-01-09-TIL Today I Learned Jackson Jackson은 자바에서 가장 널리 쓰이는 JSON 라이브러리다. jackson-databind는 스트리밍 API(jackson-core) 위에서 자바 객체와 JSON을 서로 바꾸는 데이터 바인딩 패키지이고, 중심에는 ObjectMapper가 있다(jackson-databind... 2023/01/09 2023-TIL
2023-01-05-TIL TIL 2023-01-05-TIL Today I Learned Java Logging Best Practices https://sematext.com/blog/java-logging-best-practices/ https://www.atatus.com/blog/best-practices-in-java-logging/ Audit Log ... 2023/01/05 2023-TIL
2022-12-26-TIL TIL 2022-12-26-TIL Today I Learned 스프린트의 정의에서 시작해, 운영 관점의 주제들(Kafka 컨슈머 랙, Redis 고가용성, Kubernetes 환경의 graceful shutdown과 프로브, nginx와 Tomcat 연동, CORS preflight)을 정리했다. Sprint Scrum Guide는 스프린트를 한 ... 2022/12/26 2022-TIL
2022-12-24-TIL TIL 2022-12-24-TIL Today I Learned 함수형 프로그래밍 함수형 프로그래밍을 잘 하려면 재귀함수에 익숙해져야 한다. 반복문 -> 재귀 -> 꼬리함수 최적화의 과정을 반복 숙달해야한다. func concate(Strintg s) { val leftPart = s.subString(0, 10); val r... 2022/12/24 2022-TIL
2022-12-21-TIL TIL 2022-12-21-TIL Today I Learned Go와 Java가 문자열과 메모리를 다루는 방식을 비교하고, 계층형 아키텍처, 권한 확인, 이미지 업로드, MDC 로깅 같은 Spring 실무 주제를 훑었다. Go Memory Stack Go에서는 변수를 스택에 둘지 힙에 둘지를 개발자가 정하지 않고 컴파일러가 정한다. Go FAQ에 ... 2022/12/21 2022-TIL