전체

    인텔리제이 빌드가 느려졌다면..

    아래 내용이 정답은 아닐 수 있습니다.Shift + Ctrl + F8 (Mac: Shift + Cmd + F8)을 누릅니다.또는, 메뉴에서 **Run -> View Breakpoints...**를 클릭합니다.설정된 브레이크 포인트들을 모두 해제합니다.디버깅 모드로 시작 시에 가끔 특정 브레이크 포인트가 빌드 속도에 엄청난 영향을 끼치는 경우가 있습니다. spring: main: lazy-initialization: true위 설정도 로컬 환경 한정에서 꽤 도움 됩니다. 운영은 비추.

    [Spring] DTO는 어디서 변환할까? (feat. DDD)

    MVC와 헥사고날일반적으로 규모가 작은 MVC 개발 방식(도메인 중심이 아닌 경우)은 일반적으로 모든 서비스 레이어에서 DTO를 파라미터로 받고 return도 DTO로 합니다.헥사고날에서는 계층 간의 시스템적인 완벽한 분리를 추구하기 때문에 서비스 레이어에서는 일반적으로 도메인 객체만을 담당하게 됩니다. 비교는 MVC와 헥사고날로 한 것이지만 더 넓게 보자면 SQL 중심의 개발 방식 vs DDD 개발 방식 을 두고 얘기한 것 이기도 합니다.헥사고날의 코드 구조와 장점이제 헥사고날 코드를 잠깐 구경하겠습니다.Member라는 도메인 객체가 있고 해당 객체를 서비스 레이어에서 다루는 코드 입니다.public class Member { private Long id; private String name; ..

    [Spring] R2DBC DatabaseClient 잘 사용하기

    소개Webflux에서 DB 조회를 할 때 선택지가 많지만 개인적으로 가장 접근이 쉬운 방법에 대한 효율적인 공통화 클래스를 소개하고자 합니다.(물론 제 기준..)일단 조회 기능을 다 설명해보려고 합니다.DB 조회 종류ReactiveCrudRepositoryMono findById(ID id); 간단한 조회를 할 때 좋은 선택이 될 수 있습니다.Criteriapublic Flux findAll(Criteria criteria, Class domainType) { return r2dbcTemplate.select(domainType) .matching(query(criteria)) .all(); }동적 쿼리의 유연성이 떨어진고 가독성이 ..

    '공통'과 '오픈 소스'의 차이

    굉장히 지극히 사견일 수 있는 글을 작성하고자 합니다.'공통'과 '오픈 소스'의 차이개발을 할 때 공통 함수나 공통 클래스를 만드는 일은 빈번합니다.(없으면 할말이 없지만..)공통 함수와 오픈 소스의 공통점은 "쓰기 쉽게 공통으로 만들어 놓은 무엇"을 뜻합니다.하지만 차이점은 뭘까요? 이 차이점에 대한 특징을 모르고 초보자들의 의욕만 앞선 실수가 등장 하는 경우가 꽤나 많이 있습니다.오픈 소스가 가지는 특징오픈 소스는 신뢰성이 있어야 합니다.무슨 말이냐면 적어도 오랜기간 이상 사용해도 무너지지 않을만큼의 무언가가 있어야한다는 의미입니다.처음부터 완벽하게 만드는 것을 의미하는 게 아닙니다.그 조건은 꽤나 여러가지겠지만 지금 생각나는 것은 아래 2가지 정도입니다. 1. 커뮤니티가 존재하는가2. 누군가가 해당..