문제해결(14)
-
이벤트 리스너 메서드에서 삭제된 매입 이력이 조회되는 문제 해결
1. 문제 배경주식 포트폴리오 가상 관리 웹 애플리케이션을 구현하던 중 포트폴리오에 있는 어떤 한 종목에 등록되어 있는 매입 이력을 삭제하는 서비스를 구현하고 있었습니다. 이때 포트폴리오, 포트폴리오 종목, 매입 이력 도메인의 관계는 다음과 같습니다. 하나의 포트폴리오에는 0개 이상의 포트폴리오 종목을 가질 수 있고, 하나의 포트폴리오 종목에는 0개 이상의 매입 이력을 가질수 있습니다. 위와 같은 관계를 기반으로 매입 이력을 삭제하는 서비스 구현 자체에는 문제가 없었습니다. 그러나 매입 이력 삭제 서비스에 알람 이벤트를 추가하였을 때 문제가 발생하였습니다. 다음 코드는 매입 이력 삭제 서비스에 대한 코드입니다. 매입 이력을 삭제하기 위해서 어떤 한 매입 이력의 식별번호(purchaseHistoryId)..
2024.08.18 -
ngrinder agent의 local server 연결 문제 해결
문제 상황ngrinder/controller와 ngrinder/agent를 docker 컨테이너를 이용하여 실행한 상태에서 기본적인 로그인 성능 테스트를 하기 위해서 groovy 언어 기반 스크립트를 다음과 같이 작성하였습니다.import static net.grinder.script.Grinder.grinderimport static org.junit.Assert.*import static org.hamcrest.Matchers.*import net.grinder.script.GTestimport net.grinder.script.Grinderimport net.grinder.scriptengine.groovy.junit.GrinderRunnerimport net.grinder.scriptengine...
2024.06.28 -
junit으로 작성한 테스트가 gradle로 실행될때 해결
문제원인 인텔리제이서 Junit으로 작성한 테스트 코드를 gradle로 실행할때 에러가 발생합니다. 해결방법 파일->설정->빌드,실행,배포->빌드도구->Gradle -> 빌드 및 실행에서 Gradle에서 Intellij IDEA로 변경 References https://www.jetbrains.com/help/idea/work-with-tests-in-gradle.html
2023.03.26 -
JDK18 한글 인코딩 문제
배경 Windows 10의 인텔리제이 환경에서 자바 언어 컴파일시 한글이 깨지는 문제가 발생하였습니다. 문제원인 프로젝트의 JDK 버전을 JDK18로 설정하였습니다. 해결방법 JDK 버전을 JDK15로 변경
2023.02.06 -
[docker] mysql conatiner 생성시 포트포워딩 문제
배경 docker 엔진을 사용하여 mysql container를 생성하기 위해 다음과 같은 명령어를 실행하였습니다. $ docker run -p 3306:3306 —name mysql_boot -e MYSQL_ROOT_PASSWORD=1 -e MYSQL_DATABASE=springboot -e MYSQL_USER=yonghwan -e MYSQL_PASSWORD=pass -d mysql 위 명령어의포트 포워딩 설정은 호스트 시스템에서 3306번 TCP 포트로 유입되는 트래픽은 모두 도커 컨테이너의 3306번 TCP 포트로 전달된다는 의미입니다. 문제 위 명령어를 수행시 다음과 같은 결과가 나왔습니다. Error response from daemon: Ports are not available: exposi..
2022.12.21 -
[SpringBoot] SpringBoot H2 데이터베이스 설정
1. 의존성 추가 gradle dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.projectlombok:lombok:1.18.24' runtimeOnly 'com.h2database:h2' } 2. h2 데이터베이스 설정 application.yml에 "local", "dev" 프로파일 그룹을 생성한 다음 "testdb" 프로파일에 h2 데이터베이스 설정을 하겠습니다. spring: profiles: group: "local": "testdb" "d..
2022.11.21