오류 메시지: org.springframework.dao.InvalidDataAccessApiUsageException: For input string: "XXX"; nested exception is java.lang.NumberFormatException: For input string: "XXX"
상황: jpa repository를 통한 조회를 시도하고 있었고, entity 안에서 Enum 클래스를 사용하고 있던 상황에 발생한 오류
public int solution(int[] A) {
int len = A.length;
if (len < 3) {
return 0;
}
Arrays.sort(A);
for (int i = 0; i < len - 2; i++) {
int P = A[i], Q = A[i + 1], R = A[i + 2];
if (Q > R - P) {
return 1;
}
}
return 0;
}
이번 문제는 직관적으로 이해는 쉬웠으나 시간 복잡도가 중요한 문제였고 역시나 coner case를 조심해야하는 문제다.
prefix Sum(부분합) 문제
이중 for문 절대로 안됨
단건의 for문도 전체 index를 돌면 시간 복잡도 실패
corner case 확인 잘할 것
public int solution(int A, int B, int K) {
int startIdx = 0;
int result = 0;
for (int i = A; i <= B; i++) {
if (i % K == 0) {
startIdx = i;
result++;
break;
}
}
result += (B - startIdx) / K;
if(B == A && B % K != 0) {
return 0;
}
return result;
}
File - Project Structure - Project Settings-Project에서 Language level : 사용하고자 하는 자바버전으로 변경
File - Project Structure - Project Settings-Modules에서 모듈 추가 후 Language level : 사용하고자 하는 자바 버전으로 변경
위와 같이 변경했는데도 안 되면 Settings-Build, Execution~ - Java Compiler에서 module추가 후 Target bytecodeVersion을 사용하고자 하는 버전으로 변경하면 된다.
maven 프로젝트를 gradle로 전환하면서 마주친 오류는 main, test의 java폴더를 소스 루트로 인식하지 못하는 오류가 있었다. Cannot find or load main class 오류 발생. 그래서 대상이 되는 java 패키지 폴더를 우클릭하고 Source Root로 변환해주는 작업을 했다.
yaml파일을 통한 @value값 설정 시 static일 경우 값 설정이 정상적으로 되지 않는 오류 발생. null값으로 세팅됨. - 값이 할당되는 시점 차이로 보여 해당 현상 파악할 예정
또한 기존의 프로젝트 파일을 그대로 가져다 쓰면서 Cloud not resolve type alias '패키지명.클래스명'의 오류가 발생하여
yaml 설정 파일 중 아래의 type-aliases-package 경로를 현재 프로젝트의 경로로 변경