첫 번째 단계는 인터페이스 유형 핸들러 <t>를 구현하는 것입니다
@mappedjdbctypes (jdbctype.timestamp) //이 주석이 여기에 사용되지 않으면 jdbctype = "timestamp"@mappedtypes (dateTime.class)를 작성해야합니다. //이 주석이 여기에 사용되지 않으면 javatype = "com.sinosoft.sysframwork.common. DateTimeHandler는 TypeHandler <DateTime> {2 단계 레지스터 타입 핸들러
등록하는 방법에는 두 가지가 있습니다
하나는 단일 등록입니다
<typehandlers> <typehandler handler = "com. ***. DateatimeTypeHandler"javatype = "[ljava.lang.string;" jdbctype = "varchar"/> </typehandlers>
하나는 배치 등록입니다
<Mappers> <Mapper resource = "com/tiantian/mybatis/mapper/usermapper.xml"/> <package name = "com.tiantian.mybatis.mapperinterface"/> </mappers>
두 번째 등록 방법이 사용되는 경우 JDBCTYPE 및 JAVATYPE의 선언은 주석에 의해서만 정의 될 수 있습니다.
3 단계 : 사용 :
1. 쿼리 결과 세트 필드 정의
<resultmap id = "userresult"type = "user"> <id column = "id"property = "id"/> <result column = "inverts"property = "interple"javatype = "[ljava.lang.string;" jdbctype = "varchar"/> </resultmap>
또는
<resultmap id = "userresult"type = "user"> <id column = "id"property = "id"/> <result column = "inverts"property = "interpors"typehandler = "com.tiantian.mybatis.handler.stringarraytypehandler"/> </resultmap>
즉, TypeHandler 클래스가 직접 지정된 경우 MyBatis를 작성하더라도 JAVATYPE 및 JDBCTYPE를 작성할 필요가 없습니다.
2. 매개 변수를 전달하고 쿼리하거나 수정하십시오
<test = "txlogstatus! = null"> txlogstatus = #{txlogstatus, typehandler = com.rrcp.util.typehandlers.eventStatUtypeHandler}, </if>마찬가지로 여기에서 유형 핸들러는 JDBCTYPE 및 JAVATYPE로 대체 할 수도 있습니다.
요약 :
등록하고 사용할 때 일관성을 유지하거나 그대로 작성하십시오. 통합되지 않으면 해당 유형 핸들러가 발견되지 않고 오류 가보고됩니다. 우리의 목적은 TypeHandler 처리 메커니즘을 올바르게 사용하는 것입니다. 우리는 Mybatis가 성공적으로 등록하고 검색하는 데 사용하는 알고리즘을 탐구하고 싶지 않습니다. 시간이 있고 시간이 있다면, 더 적은 속성을 등록함으로써 어떤 결과가 발생하는지 연구 할 수 있습니다. 그러나 철저히 연구하면 다음 버전의 myabtis가 변경 될 수 있습니다.
위는 내가 당신에게 소개 한 mybatis에 대한 사용자 정의 유형 핸들러를 구현하는 3 단계 프로세스입니다. 나는 그것이 당신에게 도움이되기를 바랍니다. 궁금한 점이 있으면 메시지를 남겨 주시면 편집자가 제 시간에 답장을 드리겠습니다. Wulin.com 웹 사이트를 지원해 주셔서 대단히 감사합니다!