반응형 SMALL mybatis14 if, choose, where, trim 태그 사용 1. 태그 – 조건 분기 처리예시: 검색 조건 있을 때만 추가 SELECT * FROM users name = #{name} AND email = #{email} test는 자바 조건식 (!= null, > 0, == 'admin' 등)와 함께 쓰면 자동으로 WHERE 키워드 붙여주고, AND/OR 정리까지 해줘요2. , , – 다중 조건 분기예시: 조건 우선순위 처리 SELECT * FROM users name = #{name} email = #{email} status = 'active' if-else if-else 구조처.. 2025. 4. 17. SQL 재사용 (<sql>, <include>) 핵심 개념 요약 태그 역할 재사용 가능한 SQL 조각 정의해당 SQL 조각을 삽입사용 예시: 컬럼 목록 재사용XML 매퍼 예시 id, name, email, created_at SELECT FROM users WHERE id = #{id} SELECT FROM usersrefid는 같은 XML 파일 안에 있어야 하며, 다른 파일에서 사용하려면 namespace 포함으로 참조해야 해요.고급 예시: 동적 조건도 재사용 가능 AND name = #{name} AND email = #{email} SELECT * FROM users namespace 간 공유 예시common-sql.xml에 공통 SQL 정의user-mapper.xml에서 참.. 2025. 4. 17. 컬렉션 매핑 (collection, association) 핵심 요약 태그 용도 예시 association1:1 관계 매핑주문 안에 사용자 객체collection1:N 관계 매핑사용자 안에 주문 리스트1. – 1:1 관계 매핑예시: Order 안에 User 객체가 포함된 경우SQLSELECT o.id AS order_id, o.order_date, u.id AS user_id, u.name AS user_nameFROM orders oJOIN users u ON o.user_id = u.idresultMap Java 클래스public class Order { private int id; private Date orderDate; private User user;}public class User { .. 2025. 4. 17. 조인 결과 매핑 (1:1, 1:N) 1:1 조인 결과 매핑 (association 사용)예시: Order 객체 안에 User 정보 포함데이터 관계orders 테이블: 주문 정보 (order_id, user_id, order_date)users 테이블: 사용자 정보 (id, name, email)XML: resultMap + association SELECT o.order_id, o.order_date, u.id AS user_id, u.name AS user_name, u.email AS user_email FROM orders o JOIN users u ON o.user_id = u.idJava 객체public class Order { private int orderId; .. 2025. 4. 17. MyBatis 설정 파일 구성 (mybatis-config.xml) mybatis-config.xml 개요위치: 일반적으로 src/main/resources 아래에 위치역할: 전역 설정(매핑 방식, 캐시, 로그, 네이밍 전략 등)을 관리주의: Spring Boot 환경에서는 application.yml이 대부분의 설정을 대체하지만, 복잡한 설정이 필요한 경우 여전히 mybatis-config.xml을 병행 사용합니다.기본 구조 예시 --> 주요 요소 설명1. MyBatis의 핵심 동작을 설정xml복사편집 → DB의 user_name → Java의 userName으로 자동 매핑 → 콘솔에 SQL 로그 출력. 다른 옵션: SLF.. 2025. 4. 16. 프로젝트에 MyBatis 추가하기 (Maven/Gradle 설정) 1. Maven 설정 방법pom.xml에 MyBatis 관련 의존성 추가 org.mybatis.spring.boot mybatis-spring-boot-starter 3.0.2 mysql mysql-connector-j 8.0.332. Gradle 설정 방법build.gradle에 다음 코드 추가 // MyBatis + Spring Bootimplementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:3.0.2'// MySQL 예시implementation 'mysql:mysql-connector-j:8.0.33'3. 기본 설정 파일 추가application.yml 또는 application.properties spring: dat.. 2025. 4. 16. 이전 1 2 3 다음 LIST