프로젝트/게시판 0부터 10까지
Map key 값 대문자에서 소문자로 변경
필리힐리
2022. 9. 20. 20:45

오라클을 사용하는데 key 값이 전부 대문자로 리턴이 되고 있어 html에서 역시 대문자로 사용했는데
보기에도 이상하고 입력하기에도 불편해 조치를 취하기로 했다.
구글 검색을 하면 Listorderedmap, EgovMap 등 여러가지가 나오는데 제대로 동작하지 않았다.
그러다 발견한 방법은 HashMap을 상속 받아 재정의하는 것이다.
자바의 기본 개념인 상속을 통해 부모의 필드 메서드를 받아 재정의 또는 그대로 사용할 수 있다.

ToLowerCaseMap 클래스를 생성하고 HashMap을 상속 받았다.

HashMap 안에 데이터를 넣을 수 있는 put 메소드가 존재하고 이를 재정의하고자한다.

게시글 목록 데이터를 불러올 때 key 값이 대문자로 넘어오는 걸 확인할 수 있다.

그대로 진행을 하면 HashMap의 메소드 put에 인자로 key를 소문자로 변환해 넘겨주는 걸 확인할 수 있다.

이제부턴 키 값을 소문자로 입력해도 정상 동작한다.


마이바티스에서 해당 map을 resultType 부분에 입력해 사용할 수 있다.
패키지명까지 써줘야하는데 application.properties 설정 파일에서 패키지 경로를 정의해주면 클래스명만으로도 해당 클래스를 사용 가능하다.