마이바티스 예제

XML 구성 파일에는 더 많은 것이 있지만 위의 예제에서는 가장 중요한 부분을 지적합니다. XML 문서의 유효성을 검사하는 데 필요한 XML 헤더를 확인합니다. 환경 요소의 본문에는 트랜잭션 관리 및 연결 풀링에 대한 환경 구성이 포함되어 있습니다. 매퍼 요소에는 SQL 코드 및 매핑 정의가 포함된 XML 파일 및/또는 추가된 Java 인터페이스 클래스와 같은 매퍼 목록이 포함되어 있습니다. 구성 XML 파일에는 데이터베이스 연결 인스턴스를 수집하기 위한 DataSource와 트랜잭션의 범위 및 제어 방법을 결정하는 트랜잭션 관리자를 포함하여 MyBatis 시스템의 핵심에 대한 설정이 포함되어 있습니다. XML 구성 파일의 전체 세부 정보는 이 문서의 후반부에서 찾을 수 있지만 다음은 매핑된 문에 바인딩하기 위해 만든 인터페이스입니다. 매퍼 인터페이스의 인스턴스는 SqlSession에서 획득됩니다. 따라서 기술적으로 가장 광범위한 매퍼 인스턴스의 범위는 요청된 SqlSession과 동일합니다. 그러나 매퍼 인스턴스에 가장 적합한 범위는 메서드 범위입니다. 즉, 사용 되는 메서드 내에서 요청 하 고 삭제 해야 합니다. 명시적으로 닫을 필요는 없습니다. SqlSession과 마찬가지로 요청 전체에서 리소스를 유지하는 것은 문제가 되지 않지만 이 수준에서 너무 많은 리소스를 관리하면 빠르게 문제가 될 수 있습니다. 간단하게 유지하고 매퍼를 메서드 범위에 유지하십시오.

다음 예제에서는 이 방법을 보여 줍니다. 이 예제에서는 공유 데이터베이스 테이블을 사용하여 데이터를 교환하는 방법을 보여 주며 있습니다. 첫 번째 예제에서는 MySQL 버전을 가져옵니다. 이 예제에서는 주석을 사용하여 개체를 SQL 문에 매핑합니다. src/main/resources/OSGI-INF/Blueprint 폴더에 있는 낙타-mybatis.xml 파일에는 블루프린트 XML 파일이 있습니다. 이 예제에서는 포함된 데이터베이스를 사용하므로 다음 bean을 사용하여 테이블을 만들고 놓습니다. BlogMapper와 같은 매퍼 클래스에는 한 가지 트릭이 있습니다. 매핑된 문은 XML로 매핑할 필요가 없습니다. 대신 Java 주석을 사용할 수 있습니다.

예를 들어 위의 XML을 제거하고 대체 할 수 있습니다 : 이것이 정규화 된 Java 클래스에서 메서드를 호출하는 것과 얼마나 유사한지 알 수 있으며 그 이유가 있습니다. 이 이름은 이름, 매개 변수 및 반환 형식을 매핑된 선택 문으로 일치하는 메서드를 사용하여 네임스페이스와 같은 이름의 매퍼 클래스에 직접 매핑할 수 있습니다. 이것은 당신이 위에서 본 대로 매퍼 인터페이스에 대한 방법을 매우 간단하게 호출 할 수 있습니다,하지만 여기에 다시 다음 예입니다 : 당신은 maven을 사용하는 경우 당신은 쉽게 명령 줄에서 예제를 설치할 수 있습니다 : 그리고 MyBatis 매핑 파일 Order.xml는 s에 있습니다 RC / 메인 / 자원 / 조직 / 아파치 / 낙타 / 낙타 / 예 / mybatis 어디 우리는 아래와 같이, 이 주문 POJO에 SQL에서 매핑 : 안녕 sive, 나는 다른 클래스 예에 따라 하나의 클래스를 명확히하시기 바랍니다 의심이 : 주소에 직원 클래스 depanding. public class Employee { 개인 int empId; 개인 문자열 empId; 개인 문자열 empId; 개인 주소 주소; //setter및 getters } 공용 클래스 주소{ 개인 int 주소ID; 개인 문자열 상태; 개인 문자열 국가; // setter 및 getters } 클래스 위에.