자바 마이바티스 예제

안녕하세요, 표준이 중요한지 아닌지에 대한 끝없는 논쟁에 들어가지 않을 것입니다. 여기서 내가 말하려고하는 것은 Mybatis를 사용하여 복잡한 객체 구조를로드하면 프록시가 아닌 POJOs입니다. 그래서 XML / JSON을 생성하기 위해 잭슨 / xstream 등과 같은 마샬링 / 마샬링 해제 도구를 사용할 수 있습니다. 일부 속성이 null이면 태그를 생성하지 않거나 빈 태그를 생성합니다. 게으른 자식 컬렉션이있는 JPA에서 복잡한 개체를로드하는 것처럼 해당 객체를 마샬링하려고하면 LazyLoadException이 throw됩니다… 자세히 보기 » MyBatis는 Java 응용 프로그램에서 데이터베이스 액세스 구현을 단순화하는 오픈 소스 지속성 프레임워크입니다. 사용자 지정 SQL, 저장 프로시저 및 다양한 유형의 매핑 관계식에 대한 지원을 제공합니다. MyBatis는 XML 설명자 또는 주석을 사용하여 개체를 저장 프로시저 또는 SQL 문과 결합하는 Java 지속성 프레임워크입니다. ORM 프레임워크와 달리 MyBatis는 Java 개체를 데이터베이스 테이블에 매핑하지 않고 Java 메서드를 SQL 문에 매핑합니다.

MyBatis는 저장 프로시저, 보기, 복잡성 및 공급업체 독점 기능의 쿼리와 같은 모든 데이터베이스 기능을 사용할 수 있습니다. 네임스페이스는 여기에서 볼 수 있듯이 인터페이스 바인딩을 활성화하며, 오늘 사용할 생각이 없더라도 마음이 바뀌는 경우에 대비하여 여기에 명시된 이러한 방법을 따라야 합니다. 네임스페이스를 한 번 사용하고 적절한 Java 패키지 네임스페이스에 넣으면 코드를 정리하고 장기적으로 MyBatis의 유용성을 향상시킬 수 있습니다. 참고 자바 주석은 표현력과 유연성이 불행히도 제한됩니다. 조사, 디자인 및 시험에 많은 시간을 할애했음에도 불구하고 가장 강력한 MyBatis 매핑은 주석으로 구축할 수 없습니다. C# 특성(예:)은 이러한 제한으로 인해 어려움을 겪지 않으므로 MyBatis.NET XML에 대한 훨씬 더 풍부한 대안을 누릴 수 있습니다. 즉, Java 별표 기반 구성의 이점이 없는 것은 아닙니다. MyBatis를 구성하고 매핑을 만드는 방법을 알고 있으므로 좋은 것을 사용할 준비가 되었습니다. MyBatis 자바 API는 당신이 당신의 노력의 보상을 얻을 수있는 곳입니다.

JDBC에 비해 MyBatis는 코드를 크게 단순화하고 깨끗하고 이해하기 쉽고 유지 관리가 용이합니다. MyBatis 3는 SQL Maps를 더 잘 작업할 수 있도록 여러 가지 중요한 개선 사항이 도입되었습니다. 최종 빌드 메서드는 구성 인스턴스를 사용 합니다. 구성 클래스에는 SqlSessionFactory 인스턴스에 대해 알아야 할 모든 것이 포함되어 있습니다. Configuration 클래스는 SQL 맵을 찾고 조작하는 등 구성을 면관하는 데 유용합니다(응용 프로그램이 요청을 수락한 후에는 권장되지 않음). 구성 클래스에는 Java API로만 노출된 모든 구성 스위치가 있습니다. 다음은 구성 인스턴스를 수동으로 빌드() 메서드에 전달하여 SqlSessionFactory를 만드는 방법에 대한 간단한 예제입니다.