전체 글30 Linear Probing 방식의 Hash Table을 구현해보기 Hash Table 평균 O(1)의 시간복잡도로 Key-value 형태의 값을 저장하고 검색할 수 있습니다. Key는 고유해야 하고 중복된 key 가 있으면 먼저 있던 key와 value를 대체합니다. 저장 순서를 보장하지 않습니다. 동작원리 데이터를 저장할때 key 와 value 를 입력받습니다. 입력받은 key 값을 해시 함수(Hash Function)를 통해 hash table 의 크기보다 작은 인덱스 값으로 변환합니다. 해시함수 연산을 통에 얻은 hash table 의 인덱스에 value 를 저장합니다. 데이터를 조회할때는 입력받은 key 값을 해시함수로 연산하여 인덱스값을 구하고 해당 인덱스에 접근하여 key 값의 value 를 반환합니다. 해시 함수(Hash Function) 해시 함수는 임의.. 2023. 9. 5. @Async 비동기 메서드와 No thread-bound request found 오류 문제 양상 java.lang.IllegalStateException 이 발생했다. 한 줄기 희망인 Exception log 를 살펴보았다. Exception log 내용 Unexpected exception occurred invoking async method: publicNo thread-bound request found: Are you referring to request attributes outside of an actual web request, or processing a request outside of the originally receiving thread? If you are actually operating within a web request and still receive th.. 2023. 5. 30. Message Format 사용에서 작은 따옴표(single quotes)의 위험성 회사에서 Message Properties 를 사용하여 다국어를 지원하고 있다. message_en.properites 파일을 예로 들어보면, message_en.properites 파일에 아래와 같은 키와 값이 있다. site.title={0}'s and {1}'s test site. {0} 처럼 되어 있는 부분은 나중에 다른 값으로 치환될 수 있다. {0}, {1}, {2}... 등으로 여러개를 사용할 수 있다. "{0}'s and {1}'s test site.." 라는 메시지를 보여줘야한다면 {0}과 {1} 은 사용자 별로 매핑해주는 값이 달라져야 한다. 예를 들면, "차무식's and 정팔's test site." 이 될 수도 있고 "태식's and 민회장's test site." 도 될 수 있어.. 2023. 5. 8. NoClassDefFoundError 에러 발생 문제 발생 상황 로드밸런서로 Ec2 를 하나씩 내리고 배포 작업을 한다. 아직 중지시키지 않은 Ec2 insetance 의 jar 파일명을 수정했더니 NoClassDefFoundError 이 발생했다. NoClassDefFoundError JVM(Java Virtual Machine) 또는 인스턴스가 ClassLoader클래스 정의에서 로드를 시도하고(정상적인 메서드 호출의 일부로 또는 표현식을 사용하여 새 인스턴스를 만드는 과정의 일부로 new) 클래스 정의를 찾을 수 없는 경우 발생합니다. 검색된 클래스 정의는 현재 실행 중인 클래스가 컴파일될 때 존재했지만 더 이상 정의를 찾을 수 없습니다. == 컴파일했던 파일을 더이상 찾을 수 없다. 해결 1. 파일명을 다시 원복시켰다. 2. 로드밸런서로 인스턴.. 2023. 3. 20. 이전 1 2 3 4 5 ··· 8 다음