A. XML 설정 방식 (section01.xmlconfig)

1) mybatis-config.xml (전역 설계도)

스크린샷 2025-09-12 오전 12.46.48.png

2) mapper.xml (SQL 메뉴판)0. 세팅

스크린샷 2025-09-12 오전 1.26.46.png

3) Application (실행 흐름)

스크린샷 2025-09-12 오전 1.27.59.png

  1. Resources.getResourceAsStream("mybatis-config.xml")

    → 전역 설계도(XML)를 스트림으로 로딩

  2. new SqlSessionFactoryBuilder().build(inputStream)

    → 설계도로 SqlSessionFactory(공장) 생성(싱글톤 성격)

  3. sqlSessionFactory.openSession(false)

    SqlSession(작업자) 생성

    false = 자동 커밋 끔(수동 커밋 모드)

    → SELECT만 하면 커밋 필요 없음 DML(INSERT/UPDATE/DELETE)은 commit() 해야 반영

  4. session.selectOne("mapper.selectNow")

    → 매퍼키 = namespace.id

    → 단일 행

  5. finally { session.close(); }

    → 세션 반납(풀에 반환)