본문 바로가기

개발/04.Mybatis

(6)
[Mybatis] java.lang.AbstractMethodError: Receiver class org.mybatis.spring.batch.MyBatisBatchItemWriter does not define or inherit an implementation of the resolved method 'abstract void write(org.springframework.batch.item.Chunk)' of interface org.spring 배경 : 7주차 실습하는데 MybatisPagingItemReader 는 잘 되었는데 MybatisBatchItemWriter 는 자꾸 오류가나는 것을 확인하였다... 이거 역시 퍼플렉시티 통해서 원인 확인중 안됨.. 챗지피티도 안됨. 내용위 로그를 구글번역기에 돌렸다 java.lang.AbstractMethodError: 수신자 클래스 org.mybatis.spring.batch.MyBatisBatchItemWriter는 org.springframework 인터페이스의 해결된 메소드 'abstract void write(org.springframework.batch.item.Chunk)'의 구현을 정의하거나 상속하지 않습니다. 하 모르겠다 스터디방 영훈님이 알려주셨다. Mybatis 관련 의존성 버전을..
[Mybatis] XML 내 조건문 걸때 eq (JSTL문법), {} 는 동작하지 않는다! 배경 & 내용  :  형태로 계속 하다가 안되서 chatGPT 한테 물어보니.. eq 안먹는단다.. 이걸로만 아오 미쳣지 ㅠㅠ 아이고 또 미쳤지.. xml 문서에 중괄호 {} 넣고 왜안되는지 1시간 30분째 이러고 있었네 하 ㅠㅠㅠ xml 문서에서 조건문 걸때는 에휴 다시 리마인드하자 ㅠㅠ 삽질 괜히 이거 땜에 ㅠㅠ
[Mybatis] StringIndexOutOfBoundsException: String index out of range: 0 배경 :  오류 메세지 확인Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.builder.BuilderException: Parsing error was found in mapping #{}. Check syntax #{property|(expression), var1=value1, var2=value2, ...} ] with root cause java.lang.S..
[Mybatis] java.lang.Long cannot be cast to java.lang.String 배경 : mybatis  쿼리에서 groupby 한 숫자 데이터의 합을 java 단에서 합치려고한다. Map으로 받은 값을 list 형태로 받은 숫자의 sum을 하려고하니 위 오류가 났다. 구글링을 통해 참고한 블로그 기준으로 해결되어 이력 남긴다 내용 :selectLeaderReviewByOrgList.get(i).get("TOT_CNT") 의 값을 로그 찍으니 위오류가 나서 처음에는 selectLeaderReviewByOrgList.get(i).get("TOT_CNT").toString() 했지만 효과 없었다. 이후에는 아래 블로그 참고해서Stirng.valueOf ( selectLeaderReviewByOrgList.get(i).get("TOT_CNT")   )  로 로그 찍으니 정상 찍혔다.. 내..
[Mybatis] 쿼리 영역 주석처리시 파라미터 포함하여 주석하면 오류나는 현상 관련 해결법 배경 : 쿼리 개발중, union all 로 조회하는 영역중 일부를 제거하고 조회해보려고하는데, DBMS 툴에서는 정상 조회되나, 시스템에서는 먹히지 않는 현상 발생으로 당황함 내용 : Mybatis에서 동적쿼리 #{param} 가 사용된 곳에 주석 처리를 하면 아래와 같이 오류가 발생한다. java.sql.SQLSyntaxErrorException: (conn=554682) Could not set parameter at position mybatis에서는 -- 주석이나 또는 /* */ 주석안에 #{파라미터} 를 감싸게 되면 주석 내에 있는 코드여도 파라미터를 지정하는 대상으로 판단한다고 한다. 그래서 #{} 코드를 주석처리하려면 아래와 같이 사용해야 한다. : 사용 가능 /* #{} */ : 오류 -..
[Mybatis] allowMultiQueries 1. 적용 이유 : 화면 내 다수 일괄 Update 처리 로직 적용 2. 적용 방법 application.properties 파일 내 JDBC 연결 URL 부분에 allowMultiQueries=true 추가 예시 : jdbc:mysql://localhost:3306/test?allowMultiQueries=true 설명 : allowMultiQueries 옵션을 true로 설정하게 되면 Mapper에서 아래와 같이 DML 자체를 forEach로 수행 할 수 있다. INSERT INTO TB_USER (name, id, password) VALUES (#{student.name}, #{student.id}, #{student.password}) 결과 ↓ INSERT INTO TB_USER(name, id..

728x90