2024/10 3

[Git / IntelliJ] 마이크로서비스 구성 시 서브모듈의 형상 관리 통합하기

개요 마이크로서비스를 공부하면서 예제 프로젝트를 진행하였는데, 부모 프로젝트에서 모듈을 생성하면 아래와 같이 형상 관리가 모듈별로 이루어지는 문제가 있었다.    심지어 둘 이상의 모듈을 수정한 다음 push하면 각각의 모듈에서 형상 관리가 이루어지므로 다음과 같이 더욱 지저분하게 보였다.   아직 모듈이 하나이고 브랜치들의 Merge 작업이 없기 때문에 이정도이지, 나중으로 가면 더 심각해질 문제였다. 필자는 IntelliJ에 내장된 Git GUI를 애용하기 때문에 더 용납할 수 없었다.물론 서브모듈별로 Git이 관리되는 것 자체가 문제라고 할 수는 없지만, 단순한 학습용 프로젝트이기 때문에 이렇게 관리되는 것을 원치 않았다.  해결 방법 원인은 어찌보면 당연하게도 모듈이 별도의 Git 저장소로 관리되..

Dev 2024.10.16

[Java / Spring] 재고시스템으로 알아보는 동시성이슈 해결방법

개요  재고시스템으로 알아보는 동시성이슈 해결방법 강의 | 최상용 - 인프런최상용 | 동시성 이슈란 무엇인지 알아보고 처리하는 방법들을 학습합니다., 동시성 이슈 처리도 자신있게! 간단한 재고 시스템으로 차근차근 배워보세요. 백엔드 개발자라면 꼭 알아야 할 동www.inflearn.com 해당 게시글은 위 인프런 강의를 수강한 내용을 바탕으로 작성되었습니다. 개발 환경Java 17SpringBoot 3.3.4GradleMySQL, JPA 목표예제 프로젝트를 통해 멀티스레드 환경에서 발생할 수 있는 동시성 이슈를 효과적으로 예방/해결할 수 있는 방법을 학습한다. 선수 과목Spring, JPA  동시성 이슈 발생 우선 동시성 이슈가 발생하는 것을 확인할 수 있는 예제 코드를 작성해 보자. Entity@Ent..

Dev/Java 2024.10.08

[Gradle] Lombok 사용 시 'cannot find symbol' 에러 해결

개요 Java17, Gradle을 사용하는 SpringBoot 프로젝트를 새로 생성 후, Lombok을 추가하여 코드를 작성했다. 그리고 간단한 테스트 코드를 작성하여 실행하려는데 아래와 같이 cannot find symbol 에러가 발생했다.  분명 Dependency도 잘 추가했고, @Getter 등 Lombok 관련 코드도 클라이언트 코드에서 문제 없이 작성이 가능했는데 말이다. 위 에러는 SpringBootApplication을 실행할 때에도 위 Lombok 관련 코드가 포함된다면 동일하게 발생했다.  원인 두괄식으로 설명하자면, build.gradle에 implementation으로 Lombok의 의존성은 추가했지만, annotationProcessor로는 Lombok을 추가하지 않았기 때문이었..

Dev 2024.10.02
반응형