BACKEND/Java & Spring

[Spring] mybatis 쿼리 작성 시 concat 사용하기

녜힝 2023. 4. 11. 10:32
반응형

우선 mybatis란 무엇인가?

mybatis는 쿼리 기반 웹 어플리케이션을 개발할 때 가장 많이 사용되는 SQL Mapper 프레임워크 이다.


mybatis를 사용하지 않으면 직접 JDBC를 이용해야 하는데 이런 경우

  • 개발자가 반복적으로 작성해야할 코드가 많고, 서비스 로직 코드와 쿼리를 분리하기 어려움
  • 커넥션 풀의 설정 등 개발자가 신경써야 할 부분이 많음

과 같은 문제점들이 존재한다.

따라서 JDBC로 직접 개발하기 보다는 mybatis 같은 프레임워크를 사용하는 게 일반적이다.

(JDBC란 Java DataBase Connectivity 의 약어로 Java와 DB연결을 위한 표준 API이다.)

 

 

mybatis를 이용하여 쿼리를 작성하며 concat 키워드를 사용할 경우
소문자가 아닌 대문자로 작성해줘야 한다.

concat은 mysql에서 여러 문자열을 하나의 문자열로 합치고 싶을 때 사용하는 함수이다.

CONCAT('오늘은 ', '11월 ', '8일 입니다.')

다음과 같이 사용할 수 있다. 결과로는 '오늘은 11월 8일 입니다.'라는 문자열이 나온다.

 

 

mapper 파일에서 쿼리 작성 시 변수와 일반 문자열을 함께 사용하고 싶은 경우,

예를 들어 파일명은 변수로, 확장자를 일반 문자열로 작성한다고 가정해보면 다음과 같이 사용할 수 있다.

SELECT CONCAT(fileName, '.xml') FROM TEST_DB;

 

반응형