[MyBatis] 오류: java.util.LinkedHashMap cannot be cast to java.lang.String

2023. 6. 13. 14:28WEB/MyBatis

java.util.LinkedHashMap cannot be cast to java.lang.String

말 그대로 LinkedHashMap을 String으로 바꿀 수 없다는 오류다.

 

 

 

LoginService에서 로그인 성공 시, 당일 해당 프로젝트에서 첫 로그인했을 경우를 가져오도록 했다.

int isFirstLogin = Integer.parseInt((String)dao.selectObj("Statistics.historyLogRecent", userUpdateMap));

 

 

dao.selectObj("Statistics.historyLogRecent", userUpdateMap) 여기에서 LinkedHashMap을 return하고 있으므로, myBatis에서 returnType을 수정한다.

//변경 전
<select id="historyLogRecent" parameterType="map" timeout="0" resultType="java.util.LinkedHashMap" useCache="false">
	SELECT count(1) as "CNT"
	FROM HISTORY_LOG
	WHERE HISTORY_DT > CURRENT_DATE
</select>

//변경 후
<select id="historyLogRecent" parameterType="map" timeout="0" resultType="string" useCache="false">
	SELECT count(1) as "CNT"
	FROM HISTORY_LOG
	WHERE HISTORY_DT > CURRENT_DATE
</select>

 

728x90

'WEB > MyBatis' 카테고리의 다른 글

[MyBatis] #{}과 ${}의 차이  (0) 2023.06.15
[MyBatis] <sql>, <include> 사용하기  (0) 2022.09.02