른록노트

[Spring] 전자정부프레임워크 사용 시 Mybatis(MSSQL) - select문의 결과를 resultType="egovMap"으로 받을 때 특정 컬럼의 데이터타입이 'TEXT'인 경우 그 컬럼이 view에서 ClobImpl로 나오는 현상 본문

Web/[Spring]

[Spring] 전자정부프레임워크 사용 시 Mybatis(MSSQL) - select문의 결과를 resultType="egovMap"으로 받을 때 특정 컬럼의 데이터타입이 'TEXT'인 경우 그 컬럼이 view에서 ClobImpl로 나오는 현상

른록 2022. 4. 20. 17:37

개발환경

  • OS 정보 : Window 10
  • 표준프레임워크 버전 : 3.10
  • JDK(JRE) 정보 : 1.8
  • WAS 정보 : tomcat 8.0
  • DB 정보 : mssql
  • 기타 환경 정보 : mybatis 사용

문제상황

전자정부프레임워크 사용 시 Mybatis(MSSQL) - select문의 결과를 resultType="egovMap"으로 받을 때 특정 컬럼의 데이터타입이 'TEXT'인 경우 그 컬럼이 view에서 'net.sourceforge.jtds.jdbc.ClobImpl@xxxxxxx'로 나오는 현상

해결방법

아래와 같은 방법을 찾았고 3번째 방법으로 해결

  1. select 문에서 cast 함수를 사용하는 방법 ( * 타입 변경시 DB서버에 리소스가 사용될 것 같아서 이용하지 않음 )
  2. resultMap을 만들어서 jdbcType과 javaType을 매칭해주는 방법 ( * HashMap형태로 받아올 순 있으나 List 형태로 받아올 수 없어서 이용하지 않음 )
  3. mssql 설정에 useLOBs=false 속성을 주는 방법 ( * 아래링크를 보고 어떤 영향이 있는지 확인한 후 이 방법으로 결정 )
    (useLOBs 설정 설명:http://jtds.sourceforge.net/faq.html)

참고사이트

https://stackoverflow.com/questions/46951242/net-sourceforge-jtds-jdbc-clobimpl4013f648-appears-in-the-response-of-jdbc-requ

반응형
Comments