본문 바로가기
Database/mariaDB

MyBatis 참고사항(XML 파일 관련)

by amungstudy 2024. 5. 29.

 

Mapper interface에 어노테이션으로 쿼리를 작성하는 방식 대신

XML문을 이용하여 쿼리를 수행하는 구조를 작성해보고자 함.

 

XML 파일에 쿼리를 작성해본적은 있지만 아무것도 없는 상태에서 구조를 만드는 건 처음이라 어려움이 있다....

 

XML 저장 위치:

저장 방법은 두 가지가 있다.

1. Mapper 인터페이스가 저장된 곳에 xml 파일을 저장시킨다

2. 'src/main/resources' 위치에 Mapper 인터페이스가 저장된 패키지명을 폴더 경로로 만들어준다.

 

XML 파일 명 : 

XML 파일을 만들 때 정해진 규칙은 따로 없다. 그렇지만 가능하면 Mapper 인터페이스와 같은 이름을 이용하여 가독성을 높여주면 좋다.

 

XML 파일 살펴보기

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

 

XML 도입부의 헤더와 doctype이다.

<!DOCTYPE> 태그는 해당 문서가 mapper로서의 역할을 한다고 명시하고 있다. 반드시 작성되어야 한다.

 

<mapper namespace="mission.ojt_server.mapper.MemberGroupMapper">

 

interface와 매핑하는 경우 namespace를 interface의 경로와 일치시켜주고,

<select> 태그의 id값을 interface의 메서드 값과 일치시키면 마이바티스가 인식해서 쿼리를 실행한다!!

 

 

 

참조 : 

공식문서

https://mybatis.org/mybatis-3/ko/index.html

 

mybatis – 마이바티스 3 | 소개

마이바티스는 무엇인가? 마이바티스는 개발자가 지정한 SQL, 저장프로시저 그리고 몇가지 고급 매핑을 지원하는 퍼시스턴스 프레임워크이다. 마이바티스는 JDBC로 처리하는 상당부분의 코드와

mybatis.org

 

 

 

https://devpad.tistory.com/107

 

스프링부트 개발환경 구성하기 (6) Mybatis 연동과 게시판 목록 조회

📢 2024년 2월 기준으로 포스팅 내용을 업데이트하였습니다. 포스팅 순서는 아래와 같다. OpenJDK 17 설치 STS 4 설치 스프링부트 프로젝트 생성 메이븐 Local Repository 설정 DB 설계와 REST API 설계 mybatis

devpad.tistory.com

 

mybatis-spring-boot-autoconfigure를 이용하면 이런 일련의 복잡한 과정이 없이 @mapper 어노테이션을 이용해 인터페이스의 메서드명과 xml 파일의 id를 매핑시켜 편리하게 사용 할 수 있다. 즉, BoardMapper.java 파일의 메서드명과 BoardMapper.xml 파일의 id는 동일해야 한다.

 

 

https://lotuus.tistory.com/75

 

[MyBatis] 동작원리, 사용방법 정리

목차 MyBatis 등장배경 [JDBC] 사용방법 JDBC : JAVA DataBase Connectivity 기존 자바에서는 DB를 조작하기 위해서 JDBC API를 사용했다. JDBC는 데이터베이스 종류에 상관없이 JDBC만 알면 어떤 데이터베이스를

lotuus.tistory.com

 

https://dlwjdcks5343.tistory.com/78

 

마이바티스 결과 매핑(결과매핑 or 생성자)

마이바티스 결과 매핑 1) 조회 결과를 자바 객체에 설정(결과 매핑) 보통 데이터베이스를 사용할 경우 조회 후 결과를 객체에 담아 사용합니다. 결과를 화면에 노출 시킬 때는 JSP파일을 이용합니

dlwjdcks5343.tistory.com