1. 程式人生 > >Springboot2.1.0 整合Mybatis和使用通用Mapper以及使用Generator程式碼生成器

Springboot2.1.0 整合Mybatis和使用通用Mapper以及使用Generator程式碼生成器

1.往你的Idea的pom檔案中加入

        //mybatis的整合    
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.2</version>
        </dependency>
        //通用mapper的整合
        <dependency>
            <groupId>tk.mybatis</groupId>
            <artifactId>mapper-spring-boot-starter</artifactId>
            <version>1.2.4</version>
        </dependency>
     

2.加入外掛:外掛的依賴必須單獨配置否則會報錯的

我進的坑就是沒有加外掛依賴,一直報:Cannot instantiate object of type tk.mybatis.mapper.generator.MapperPlugin

 <build>

        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>1.5.3.RELEASE</version>
            </plugin>
            <!--generator 生成mapper-->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.2</version>
                <executions>
                    <execution>
                        <id>Generate MyBatis Artifacts</id>
                        <goals>
                            <goal>generate</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <!-- generator 工具配置檔案的位置 -->
                    <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile>
                    <verbose>true</verbose>
                    <overwrite>true</overwrite>
                </configuration>
                <dependencies>
                    <dependency>
                        <groupId>org.mybatis.generator</groupId>
                        <artifactId>mybatis-generator-core</artifactId>
                        <version>1.3.2</version>
                    </dependency>
                    <dependency>
                        <groupId>tk.mybatis</groupId>
                        <artifactId>mapper-spring-boot-starter</artifactId>
                        <version>1.2.4</version>
                    </dependency>
                    <dependency>
                        <groupId>mysql</groupId>
                        <artifactId>mysql-connector-java</artifactId>
                        <version>5.1.46</version>
                    </dependency>
                    <dependency>
                        <groupId>org.mybatis.generator</groupId>
                        <artifactId>mybatis-generator-core</artifactId>
                        <version>1.3.2</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>

3.書寫你的generatorConfig.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

<generatorConfiguration>

    <context id="Mysql" targetRuntime="MyBatis3Simple" defaultModelType="flat">
        <property name="javaFileEncoding" value="UTF-8"/>
        <property name="useMapperCommentGenerator" value="false"/>
        <property name="beginningDelimiter" value="`"/>
        <property name="endingDelimiter" value="`"/>

        <plugin type="tk.mybatis.mapper.generator.MapperPlugin">
            <property name="mappers" value="tk.mybatis.mapper.common.Mapper"/>
            <property name="caseSensitive" value="true"/>
            <property name="forceAnnotation" value="true"/>
            <property name="beginningDelimiter" value="`"/>
            <property name="endingDelimiter" value="`"/>
        </plugin>
        <!--第一個要修改的地方,mysql連線資訊-->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://192.167.1000.1102:3306/sk"
                        userId="root01"
                        password="12341056">
        </jdbcConnection>
        <!--第2個要修改的地方,模型-->
        <javaModelGenerator targetPackage="com.zho12uwen.web.web1.main.dao.domain" targetProject="src/main/java"/>
        <!--第3個要修改的地方 ,mapper介面-->
        <sqlMapGenerator targetPackage="com.zhouw12en.web.web1.main.dao.xml"  targetProject="src/main/java"/>
        <!--第4個要修改的地方 ,xml-->
        <javaClientGenerator targetPackage="com.zho12uwen.web.web1.main.dao.mapper" targetProject="src/main/java" type="XMLMAPPER" />

        <!--第5個要修改的地方這是表名字,表id,也可以設定生成mapper的別名-->
        <!-- <table tableName="%" >
          <generatedKey column="id" sqlStatement="Mysql" identity="true"/>
        </table> -->
        <table tableName="tbd_sdyss_use1r" >
            <generatedKey column="user_id" sqlStatement="Mysql" identity="true"/>
        </table>

    </context>
</generatorConfiguration>

4.修改generator中的東西就可以執行了

大功告成************************************************