Trouble Shooting

이슈사항 Java에서 Arrays.asList() 로 생성한 List에 값을 추가 하려고하자 UnsupportedOperationException 에러가 발생했다. 해결 Java에서는 new 생성자로 생성하지 않은 List에는 값을 수정/삭제할 수 없다. 그렇기 때문에 위와 같은 상황에서는 new ArrayList() 안에 감싸서 생성한다음 사용하면 된다.
이슈 내용 쿼리 내에 Mybatis 동적 쿼리 if문을 사용해서 파라미터의 빈값 여부를 체크하는 부분에서, int형 파라미터에 대해 0을 null로 인식하는 문제가 발생했다. 원인 및 해결 방법 마이바티스 내에서 값이 0인 int형 파라미터은 공백("") 과 같다고 판단한다. 그래서 마이바티스 IF문에서 공백 체크 할 때 int형의 파라미터를 체크해야 하는 경우, 아래의 코드와 같이 equals문을 사용하도록 수정해야 한다.
이슈내용 group_concat을 사용해서 결과값을 리스트로 조회해오는 mybatis 쿼리에서 아래와 같은 에러가 발생했다. java.lang.UnsupportedOperationException 원인 해당 오류는 mapper 인터페이스의 리턴 타입과 xml의 구현체의 resultType이 일치하지 않아서 발생한 오류로, Mapper 인터페이스에는 아래와 같이 List 형태로 받게 지정해놨는데, xml의 쿼리 resultType으로 String 타입이 아닌 list라고 지정한 것이 원인이었다. mybatis에서 리턴값을 List로 받기 위해서는 resultType에는 기본형타입만 지정하고, mapper 인터페이스 부분에 리턴값으로 List 형태를 지정해야 한다! ✅ Mapper ✅ XML 해결방안 아래와..
이슈내용 Oracle 11g을 삭제하고 재설치 하는 과정에서 아래와 같은 에러가 발생했다. 해결 방법 OracleXE 서비스가 제대로 삭제되지 않았다는 의미인데, 간단하게 명령 프롬프트에서 서비스를 삭제해줌으로써 해결했다. 1. 명령 프롬프트를 관리자 권한으로 실행한다. 2. 아래 명령으로 OracleServiceXE를 삭제한다.
이슈내용 오라클 접속 시 아래와 같은 에러 발생했다. ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist 원인 및 해결방법 해당 에러는 오라클을 기동하지 않아 생기는 문제였다. 아래의 순서로 오라클을 재기동했다. 1. 아래와같이 ID/PW 없이 sysdba로 접속 2. startup 명령으로 오라클을 기동
이슈 내용 Mysql의 BigDecimal 값을 Mybatis 쿼리를 통해 Object 형태로 조회해온 뒤, 자바단에서 Integer로 형변환 하려 할 때 아래과 같은 오류가 발생했다. java.math.BigDecimal cannot be cast to java.lang.Integer 원인 자바 Map 클래스의 Get 메소드를 통해서 Object 타입의 값을 가져왔는데, 이 때 이 Object는 참조변수에 해당한다. 그러므로 Object 타입의 변수가 실제로 가르키는 값은 BigDecimal 타입인데, 해당 값을 Integer로 명시적 형변환을 진행하려고 하기 때문에 오류가 발생한 것 이었다. BigDecimal과 Integer는 서로 상속관계에 있지 않은 클래스이므로 명시적 형변환을 진행할 수 없다...
jonghne
'Trouble Shooting' 카테고리의 글 목록 (3 Page)