Java 38

Mybatis의 nested select, nested result (Spring Boot, H2, Kotlin|Java)

마지막 근무일 즈음에 팀원분이 궁금하다고 요청을 해주셔서, 보다가 사실 생소한 현재 팀에서 Kotlin 환경이다 보니, 이런 저런 이슈들이 좀 있었는데, Mybatis의 nested select 관련 질문으로 이상하게 잘 안된다고 해주셨다. 결과적으로 어렵진 않은 이슈였는데, 궁금해서 Java 버전으로도 동일하게 샘플 코드르 작성 해보았다. 그 이유는 코틀린 언어적인 이슈인지, 순수한 Java환경에서도 이슈가 되는지 궁금 했다. 그래서 두 프로젝트를 생성 해서 테스트 해봤다. 결과적으로 코틀린 환경에서는 data class에 대한 noarg 플러그인이 필요로 했다. 다만, 해당 플러그인을 쓰는게 맞을까? 고민스럽긴 하다. 그리고 이럴때 필요한 개념이 보통 Mybatis에서는 association/coll..

Spring 2022.07.19

[정리] 그냥 저냥 #위클리뉴스 #47

layout: post title: "그냥 저냥 #위클리뉴스 #47" description: "그냥 저냥 #위클리뉴스 #47" date: 2019-08-03 23:13:00 category: weekly-news tags: [weekly-news, programming] comments: true JavaScript 5 ES2019 features you can use today - LogRocket Blog ES2019에서 신규로 추가 되는 기능에 관한 설명인데, 아마 대다수분들이 Google I/O 2019 세션에서 확인하셨다시피, flat(), flatMap()함수가 추가 된다. 이 밖에도 다른 기능들이 추가 되니 확인 하여, 실제로 사용 해보면 좋겠다. Washing your code: avoid..

승돌 쓰다 2019.08.03

[정리] 그냥 저냥 #위클리뉴스 #44

ElasticSearch Elasticsearch의 색인 별명 활용 팁 최근 서비스 개편을 진행함과 동시에 특정 데이터의 개편 또한 같이 변경 되어, ES의 색인과 Query등에 급작스럽게 공부하게 되었다. Index alias를 변경 해야 하는데, QA를 진행중이라 접근이 끊기면 안되기 때문에, atomic 하게 변경이 되어야 했다. 찾아보니, add, remove를 같이 action으로 넣어 주면 끊기지 않고 정확하게 잘 동작하게 된다고 한다. Elasticsearch from the Bottom Up, Part 1 ElasticSearch의 기본이 되는 Index인 Inverted Index, Building Index, Indext Segments에 관한 설명이다. 시간이 나면 조금 더 기본적인 ..

승돌 쓰다 2019.06.30

[정리] 그냥 저냥 #위클리뉴스 #43

React setState를 바르게 사용하는 방법: 결국에는 Docs를 지속적으로 참조하는 방법이 가장 잘 활용하는 방법이라 생각을 하게 되었다. 버전별로 업데이트 될 때마다 다시 처음으로 돌아가 문서를 확인하자. 결국, 기본은 Document다. 컴포넌트 제대로 만들기: 가고 싶었던 부트캠프 강의 였는데, 강의 자료가 올라와서 읽다보니 깊고 자세한 내용이라 분명 나와 같은 React를 입문하는 사람들에게 도움이 있을 것이라 생각 되었다. 컴포넌트를 어떻게 구성해야 하는지? 실제 예시를 통해 설명하고 있는 글이다. 자바스크립트 테스팅의 기초 TDD의 소개 리액트 테스트의 소개 Enzyme 을 사용한 리액트 컴포넌트 테스트 react-testing-library 를 사용한 리액트 컴포넌트 테스트 react..

승돌 쓰다 2019.06.09

[정리] 그냥 저냥 #위클리뉴스 #42

JavaScript 레거시 코드에서 이해하기 쉬운코드로 리팩토링: 카카오 i 오픈 빌더 프로젝트를 하면서, 어떻게 리팩토링을 해나갔는지? 소개하는 글입니다. JavaScript 관련하여 좋은 글을 많이 써주시고 계신데요. 실제 카카오 프로젝트 구조를 설명하고 계신 것 같아서 자세하게 써주셔서 이해하기 쉬웠고, 리팩토링에 관해서도 약간의 설명과 진행한 방향을 소개하고 계셔서 읽어보면 도움이 많이 됩니다. Angular는 데이터 흐름이 양방향이 가능한데, 이를 단방향으로 제한하여 리팩토링 한점 또한 생소하지만, 이유가 있어 한 번쯤 다들 생각해보면 좋겠다. 읽으면서 "컴포넌트들의 분리와 영역을 설정하고, 어떻게 응집도를 낮추고, 결합도를 높일 수 있는지에 대해 깊은 고민을 많이 하셨구나" 라는 생각을 했다...

승돌 쓰다 2019.06.01

[정리] 그냥 저냥 #위클리뉴스 #41

Java Jedis 보다 Lettuce 를 쓰자 : 이 부분에 있어서 동의하는 점이 많은게, Jedis는 일단 유지보수가 굉장히 느리고, 오픈소스이더라도 어떤 커미터들의 순환 구조가 있어야 하는데, 그게 좀 부족하지 않나 생각한다. 이슈에 대응도 느리고 해서 필요하다면, 프로젝트를 fork 해서 직접 수정해서 사용해야 하는 수준으로 업데이트 지원이 느리다. 그에 반해 Lettuce는 Spring project에서도 내부적으로 많이 사용하고 있고, 메모리 누수 이슈 문제도 빠른 업데이트로 대응 되고 문제점에 대해서 굉장히 빠르게 업데이트와 피드백을 준다. 자바의 GC 가비지 콜렉션 알고리즘 : Java의 GC의 방식들에 대해 요점만 잘 정리가 되어었다. 실제로 대부분의 웹 서버들은 G1 GC를 사용할 것 ..

승돌 쓰다 2019.05.26

[정리] 그냥 저냥 #위클린뉴스 #40

그냥 저냥 #위클리뉴스 #40 일반적인 회사에서 인정받는 8가지 방법: 중요한 부분인데, 이 글에서 나온 부분을 내가 잘 못하고 있고 있는 것이 바로, "내가 했던 일들의 히스토리 남기기"이다. 과거에 내가 무슨 일을 했고, 어떻게 했는지를 잘 남겨두면, 나중에 내가 어떤 일들을 했고, 어떻게 했는지를 잘 남길 수 있는데, 그러한 것들을 잘 못했다. 그런 것들을 앞으로 좀 잘 할 수 있도록 해야겠다. 모든 사람에게 적용 될 만한 이야기라 직장인들이라면 읽어보길 추천한다. Server 신입 개발자가 스타트업에서 AWS로 살아남는 이야기 - 조용진(모두의 캠퍼스): AWS를 아주 작은 범위로 서비스 하는 회사에 들어가 점진적으로 늘어나는 서비스에 대하여, AWS 스택을 늘리면서 많은 경험기를 담고 있으며, ..

승돌 쓰다 2019.05.21

[정리] 그냥 저냥 #위클리뉴스 #38

파일럿 프로젝트를 통한 배치경험기! - 우아한형제들 기술 블로그: 우아한 형제들에서 일하게 된 신입 개발자가 겪은 Batch 개발에 관한 이야기인데, 주니어 개발자들이 읽기에 좋다고 생각하는데, 그 이유는 유성님이 어떻게 개발해야할지? 잘 쪼개어둔 점을 볼 수 있다는 점이 좋다고 생각한다. 학생이신 분들 혹은 신입 개발자들이 Batch Job은 어떻게 구성해야 하는지에 관해서 알 수 있는 글이고, 쉽게 정리가 되어 있다. 일급 컬렉션 (First Class Collection)의 소개와 써야할 이유: Java 관련 글을 많이 써주시는 동욱님인데, 이번 글은 정말 필히 읽어야 한다고 생각하는게, 객체지향관점에서도 이렇게 프로그래밍 하는 것이 더 좋구나!를 느끼게 해준다는 점이다. 그리고 Java의 fina..

승돌 쓰다 2019.04.07

[정리] 그냥 저냥 #위클리뉴스 #37

JavaScript javascript this 정리: JavaScript에서의 this는 굉장히 다양한 방법으로 동작하기 때문에 각각의 상황에서 어떻게 바인딩 되는지 알아두면 좋다. 그렇지 않으면, 내가 원하지 않던 바인딩으로 원친 않는 동작을 야기할 수 있기 때문인데, 케이스별로 정리를 잘 해주셨다. (ECMAScript) ES2019(ES10)의 변화: 생각보다 큰 기능이 추가 되진 않았는데, 그 중에서도 flat관련한 함수가 추가 되었다. 그 부분에 있어서는 좋은 것 같다. [JavaScript] Promise와 예외 핸들러...: 정말 궁금 했던 사실이면서 기본적인 이야기인데, 딱 찾게 되었다. await이 없이 반환할 경우, 비동기 요청만 되고, 아무런 문제가 없을까?에 대한 부분이 의구심이 ..

승돌 쓰다 2019.04.07

JRebel 대체제인 DCEVM을 적용해보자.

layout: post title: "DCEVM(Dynamic Code Evolution VM)을 적용해보자" description: "DCEVM(Dynamic Code Evolution VM)을 적용해보자" date: "2019-03-13 18:16" tags: [java,hot swap, programming] comments: true DCEVM을 설치 해서 조금 더 빠르게 수정된 부분을 반영하여 Tomcat이 해당 수정 코드를 빠르게 반영 하고자 설치하려고 한다. 원래는 JRebel이라는 유료 툴을 이용하면, 빠르게 Hot Swap하여 수정 된 코드를 반영할 수 있다. 그러나 연간 $550정도로 구독 모델이 굉장히 비싸서 사용하기가 어려워서 대체제를 찾다가 발견한 것이 바로 DCEVM이다. 아래와..

프로그래밍/Java 2019.03.13 (3)
반응형