은 MyEclipse 메이븐 환경에서 사용하는 발전기의 MyBatis 자동 맵 파일 위젯 (인터페이스) 및 엔티티 클래스를 생성

 데이터 테이블의 비교적 많은 수의 경우, 너무 너무 복잡 수동으로 파일 및 엔티티 클래스를 매핑 SQL을 작성하고, MyBatis로 발전기가 자동 노력의 중복을 감소 이러한 것들을 필요로 생성 할 수 있습니다. 성공적으로 구성하기 전에, 문제가 발생하기 쉬운 MyBatis로 발전기 구성은 더 많은 온라인 자습서 있지만, 그러나 나는, 나는, 디버깅하지 않고, 한 번에 모든 사람을 만들기 위해 노력하고, 변화에 변화를 자신의 프로 테스트 구성 과정을 공개합니다 여러 번 시도 이동합니다.

pom.xml 파일에 종속 1. 가져 오기

<! - MyBatis로 매핑 엔티티 클래스 및 SQL 생성 도구 자동으로 JAR -> 
        < 의존성 > 
            < 의 groupId > org.mybatis.generator </ 의 groupId > 
            < artifactId를 > MyBatis로-발전기 코어 </ artifactId를 > 
            < 버전 > 1.3. 2 </ 버전 > 
            < > JAR </ 유형 > 
        </ 의존성 > 
        <! - JDBC 데이터베이스 연결 패키지 -> 
        < 의존성 > 
            < 의 groupId >MySQL의 </의 groupId > 
            < artifactId를 > MySQL의 커넥터 - 자바 </ artifactId를 > 
            < 버전 > 5.1.47 </ 버전 > 
        </ 의존성 > 

    </ 의존성 > 
    < 구축 > 
        < 플러그인 > 
            <! - 받는다는环境中的mybatis.generator插件-> 
            < 플러그인 > 
                < 의 groupId > org.mybatis.generator </ 의 groupId > 
                < artifactId를 >발전기의 MyBatis-받는다는 - 플러그인 </artifactId를 > 
                < 버전 > 1.3.3 </ 버전 > 
                < 구성 > 
                <! - 지정의 MyBatis 발전기 구성 파일 위치. 
                구성 항목은 'generatorConfig.xml'프로필 아래에, 기본 조회가 사용하는 'SRC / 메인 / 자원을'생략됩니다. 
                위치 프로필, 'SRC / 메인 / 자원 / 지정되지 않은 경우, 즉 generatorConfig.xml를' 존재하지, 
                오류가 종료보고됩니다.    -> 
                    < configurationFile > SRC에 / 메인 / 자원 / MyBatis로 - 발전기 / generatorConfig.xml </ configurationFile > 
                    < 상세 > true로 </ 자세한 > 
                    <!-> 
                    < 덮어 쓰기 > 진정한 </ 덮어 쓰기 > 
                </ 설정 > 
            </ 플러그인 > 
        </ 플러그인 > 
        
    </ 구축 >

 

2. 자원 디렉토리에서 데이터베이스 프로파일 database.properties 자원 만들기

= com.mysql.jdbc.Driver 드라이버 
# MySQL의 데이터 및 유니 코드 인코딩 형식의 전송 중에, 문자로 설정 UTF-8. 
URL = JDBC : MySQL은 : //127.0.0.1 :? 3306 / lottery_db useUnicode = true로 & characterEncoding = UTF-. 8 & serverTimezone는 = UTC의 
사용자 = 루트 
암호 = QWERT

 

3. 쓰기 MyBatis로 발전기 구성 파일

(플러그인의 pom.xml의 MyBatis-발전기 받는다는 - 플러그인이 디렉토리 generatorConfig.xml에서 MyBatis로 발전기 구성 파일 생성, 자원 자원 디렉토리에 디렉토리 MyBatis로 발전기를 만들기 일관된 경로 configurationFile 라벨 세트 )

<? XML의 버전 = "1.0"인코딩 = "UTF-8" ?> 
<! DOCTYPE generatorConfiguration PUBLIC "- // mybatis.org//DTD 구성 MyBatis로 생성기 1.0 // EN" "http://mybatis.org/dtd /mybatis-generator-config_1_0.dtd " > 
< generatorConfiguration > 
    <! - 데이터베이스 구성 파일의 도입. -> 
    <! - .에 관계없이 자원 디렉토리에 database.properties 경우 약 database.properties 위치와 generatorConfig.xml의 현재 위치,의, 직접 
        직접 관계없이 generatorConfig의 자원 = "database.properties"를 쓸 수 .XML은 자원 디렉토리 또는 하위 디렉토리 자원이 존재합니다. 
        우리는 명령을 사용하여 맵 파일을 생성하지만, 같이 쓸 경우, 및 실행 프로젝트를하지 않기 때문에 "자원 = '클래스 경로 : database.properties' " 
        명령으로 매핑 파일 (프로젝트가 실행되고 있지 않은이 '클래스 경로를'존재하지 않는 경우 오류가 발생합니다 인수).
         database.properties은 쓰기 하위 디렉토리 XXX 자원에 "= 'xxx는 / database.properties'자원 '파일 경우 > - 
    < 속성 자원 ="database.properties "  /> 
    ! - < JDBC 키트 - > 
    <! - 항아리 패키지 데이터베이스 커넥터의 위치를 지정하도록 구성해야합니다 -> 
    < classpathentry
         위치 = "E : \ maven_repository \ MySQL은 \ MySQL의 커넥터 - 자바 MySQL의 커넥터 - 자바-5.1.47.jar \ \ 5.1.47 "  /> 
        
    <! - 컨텍스트 데이터베이스 문맥 -> 
    < 컨텍스트 ID ="mapper_lottery_db " targetRuntime ="MyBatis로 3 " > <!- 의 MyBatis 프레임 워크의 버전을 지정 -> 
    
        < commentGenerator > 
            < 속성 이름 = "유형"= "DEFAULT"  />
            <! - 진정한 자동으로 생성 된 주석을 제거할지 여부 :있다 : false로 : NO ->이 
            < 속성 이름 = "suppressAllComments" = "진정한"이  /가> 
            <! - 이 요소는 주석 제거를 지정하는 데 사용됩니다 생성 포함 날짜는 거짓 생성 : 보호를 나타냅니다 -> 
            <! - 생성 날짜, 수정도 필드가 발생할 경우, 전체 개체를 변경하는 클래스의 모든 속성, 그래서 true로 설정 버전 관리에 도움이되지 않습니다 -> 
            < 속성 이름을 = "suppressDate" "true로"=  /> 
        </ commentGenerator > 

        <! - JDBC를 연결 매개 변수 database.properties 서명되지 않은 미국의 참조에 의해 -> 
        <JdbcConnection driverClass이 = "$ {드라이버}" 은 connectionURL = "$ {} URL" 
            사용자 ID= "$} {사용자" 암호 = "{$ 암호는}"  /> 
            
        <! - 엔티티 클래스를 생성 > - 
        <! - targetPackage 패키지 엔티티 클래스가 위치 표현한다,이 패키지는 다른 프로젝트에없는 존재할 수 없습니다 현재 발전기가 자동으로 엔티티 클래스 구축하는 첫 번째 패키지를 구축 할 것입니다 
             패키지 위치를 표현 targetProject을 -> 
        < javaModelGenerator targetPackage = "cn.lottery.pojo" 
            targetProject = "를 SRC / 메인 / 자바" > 
            <! - 현재의 새로운 경로 여부 스키마의 레이어 추가 
            true로 FASE 경로 cn.lottery.pojo : : EG를. [스키마 명] cn.lottery.pojo -> 
            < 속성 이름= "enableSubPackages" = "거짓"  /> 
            <! - 전화가 필드의 문자열 유형에 대한 시간을 설정 트림 여부 ->
            < 속성 이름 = "trimStrings" = "거짓"  /> 
        </ javaModelGenerator > 

        <! - SQL 매핑 파일 -> 
        < sqlMapGenerator targetPackage = "매퍼" 
            targetProject = "SRC / 메인 / 자원" > 
            < 속성 이름 = " enableSubPackages " ="거짓 "  /> 
        </ sqlMapGenerator > 
        
        <! - 매퍼 인터페이스 ->
        <! -      유형의 = | XML 또는 주석에 순서대로 각각 "XMLMAPPER ANNOTATEDMAPPER"는, SQL 문을지도하기   -> 
        < javaClientGenerator targetPackage = "cn.lottery.mapper" 
            유형 = "ANNOTATEDMAPPER" targetProject = "SRC / 메인 / 자바 " > 
            < 속성 이름 ="trimStrings " 을 false로 =" "  /> 
        </ javaClientGenerator > 
        
        
        <! - 필요한 SQL 문 데이터 테이블 -> 
        
        <! - 테이블은 <표> 태그, 스키마는 데이터베이스를 나타냅니다 이름은 TABLENAME 테이블 이름이 표시, domainObjectName 엔티티는 생성 된 클래스 이름을 나타냅니다 -> 
        <! - enableXXXXByExample true로 설정, 생성합니다 "pojonameXXXXByExample "엔티티 클래스. 
        원금 엔티티의 생성 같은 복잡한 작업을위한 SQL : 쿼리 일치 섹션 미만, 이들은 일반적으로 필요하지 않은 이상 /보다 정렬, 중복, 
        그것은 SQL을 이러한 작업을 필요로하는 경우에도, 새로운 엔티티 클래스를 생성 할 필요가 없었다     -> 
        < 스키마 = "lottery_db"TABLENAME은 = "이를 admin_user"
            domainObjectName = "관리 사용자" enableCountByExample "false로"= 
            enableUpdateByExample "false로"= enableDeleteByExample "false로"= 
            enableSelectByExample "false로"= selectByExampleQueryId "false로"= > 
            <! - 기본적으로 필드 이름과 개체 유형, 같은 속성의 이름 를 생략 할 수있다 -> 
            < 속성 이름 = "useActualColumnNames" 값을 = "true로"  /> 
            <! - 당신은 필드 이름을 원하고 정확하게 일치하지 않는 속성 이름을 경우, 레이블이 columnOverride 관련 특성에 제공 될 수있다   -> 
        <! -      <columnOverride 열 = "login_name은"속성 = "LOGINNAME "/> -> 
        </ 테이블 >
         
     ... ...       </ 컨텍스트 > </ generatorConfiguration >
    

 

4.이 명령은 필요한 파일을 생성

많은 받는다는 문서를 생성 된 실행 된 온라인 자습서를 사용하는,하지만 내 환경은 MyEclipse는 항상에만 명령 줄을 사용 오류로 실행 "MVN을 청소 MyBatis로 발전기를 : 생성"마지막으로 성공적으로 관련을 생성 파일.

 

은 MyEclipse 단자를 표시하는 아이콘을 왼쪽 상단의 클릭으로, 명령 줄 단말기와 함께 제공됩니다.

영상

터미널이 열린 후, 기본값은 현재 프로젝트의 루트 디렉토리에 작업 디렉토리. 프로젝트의 루트 디렉토리에없는 경우, 프로젝트 "의 pom.xml"파일을 참조 할 수 있도록이 디렉토리에있는 "DIR"명령을 사용하여 루트 디렉토리로 전환해야합니다.

영상

그런 다음 "MVN에게 깨끗한 MyBatis로 발전기를 : 생성"를 입력, 출력 단자 녹색 표시 할 때 성공적으로 생성 된 맵 파일은 관련 SQL을 MyBatis로 "성공을 구축"을 참조하십시오.

영상

마지막으로, 현재 프로젝트에 새로 고치려면 "F5"키를 누르면, 당신은 인터페이스를 볼 수 엔티티 클래스와 맵 파일은 SQL을 생성

영상

추천

출처www.cnblogs.com/gocode/p/usage-of-mybatis-generator.html