手搭手SpringBoot2使用Mybatis生成器

举报
QGS 发表于 2023/04/09 17:11:53 2023/04/09
【摘要】 手搭手SpringBoot2使用Mybatis生成器

Pom.xml配置

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <parent>

        <groupId>org.springframework.boot</groupId>

        <artifactId>spring-boot-starter-parent</artifactId>

        <version>2.7.10</version>

        <relativePath/> <!-- lookup parent from repository -->

    </parent>

    <groupId>com.example</groupId>

    <artifactId>springboot-transactional</artifactId>

    <version>0.0.1-SNAPSHOT</version>

    <name>springboot-transactional</name>

    <description>springboot-transactional</description>

    <properties>

        <java.version>1.8</java.version>

    </properties>

    <dependencies>

        <dependency>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-starter-web</artifactId>

        </dependency>

        <dependency>

            <groupId>org.mybatis.spring.boot</groupId>

            <artifactId>mybatis-spring-boot-starter</artifactId>

            <version>2.3.0</version>

        </dependency>



        <dependency>

            <groupId>com.mysql</groupId>

            <artifactId>mysql-connector-j</artifactId>

            <scope>runtime</scope>

        </dependency>

        <dependency>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-starter-test</artifactId>

            <scope>test</scope>

        </dependency>

    </dependencies>



    <build>

        <resources>

            <resource>

                <!--所在的目录-->

                <directory>src/main/resources</directory>

                <includes>

                    <!--包括目录下的所有文件都会扫描到-->

                    <include>**/*.*</include>

                </includes>

                <filtering>false</filtering>

            </resource>

        </resources>

        <plugins>

            <!--pom.xml配置mybatis代码自动生成插件-->

            <plugin>

                <groupId>org.mybatis.generator</groupId>

                <artifactId>mybatis-generator-maven-plugin</artifactId>

                <version>1.3.7</version>

                <configuration>

                    <configurationFile>GeneratorMapper.xml</configurationFile>

                    <verbose>true</verbose>

                    <overwrite>true</overwrite>

                </configuration>

            </plugin>

            <plugin>

                <groupId>org.springframework.boot</groupId>

                <artifactId>spring-boot-maven-plugin</artifactId>

            </plugin>

        </plugins>

    </build>



</project>

使用Mybatis生成器


GeneratorMapper.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>



    <!-- 指定连接数据库的JDBC驱动包所在位置,指定到你本机的完整路径,需确保本地路径下存在该jar -->

    <classPathEntry location="C:\Users\13631\.m2\repository\com\mysql\mysql-connector-j\8.0.32\mysql-connector-j-8.0.32.jar"/>



    <!-- 配置table表信息内容体,targetRuntime指定采用MyBatis3的版本 -->

    <context id="tables" targetRuntime="MyBatis3">

        <!--序列化-->

        <plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>



        <!--以下需要插件  -->



        <!--

            插入成功后返回ID

           <plugin type="cn.doity.common.generator.plugin.InsertAndReturnKeyPlugin"/>



           分页查询功能

           <plugin type="cn.doity.common.generator.plugin.SelectByPagePlugin"/>



           生成带有for update后缀的select语句插件

           <plugin type="cn.doity.common.generator.plugin.SelectForUpdatePlugin"/> -->





        <!-- 抑制生成注释,由于生成的注释都是英文的,可以不让它生成 -->

        <commentGenerator>

            <property name="suppressAllComments" value="true" />

        </commentGenerator>





        <!-- 配置数据库连接信息 -->

        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"

                        connectionURL="jdbc:mysql://IP:3306/mysql?useUnicode=true&amp;characterEncoding=UTF-8&amp;#serverTimezone=GMT%2B8"

                        userId="root"

                        password="pwd">

        </jdbcConnection>



        <!-- 生成model(pojo)类,targetPackage指定model类的包名, targetProject指定生成的model放在eclipse的哪个工程下面-->

        <javaModelGenerator

                targetPackage="com.example.pojo"

                targetProject="F:\IDEADemo\SpringbootDemo\springboot-transactional\src\main\java">

            <property name="enableSubPackages" value="false" />

            <property name="trimStrings" value="false" />

        </javaModelGenerator>



        <!-- 生成MyBatis的Mapper.xml文件,targetPackage指定mapper.xml文件的包名, targetProject指定生成的mapper.xml放在eclipse的哪个工程下面 -->

        <sqlMapGenerator

                targetPackage="mapper"

                targetProject="src/main/resources">

            <property name="enableSubPackages" value="false" />

        </sqlMapGenerator>



        <!-- 生成MyBatis的dao接口类文件,targetPackage指定dao接口类的包名, targetProject指定生成的Mapper接口放在eclipse的哪个工程下面 -->

        <javaClientGenerator type="XMLMAPPER"

                             targetPackage="com.example.dao"

                             targetProject="src/main/java">

            <property name="enableSubPackages" value="false" />

        </javaClientGenerator>



        <!-- 数据库表名及对应的Java模型类名 -->

        <table tableName="staff" domainObjectName="Staff"

               enableCountByExample="false"

               enableUpdateByExample="false"

               enableDeleteByExample="false"

               enableSelectByExample="false"

               selectByExampleQueryId="false"/>

    </context>

</generatorConfiguration>

 

生成

application.properties配置

#application.properties配置文件
server.port=8080
server.servlet.context-path=/boot

#指定时区
serverTimezone=Asia/Shanghai

#连接数据库
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#serverTimezone=GMT%2B8
spring.datasource.url=jdbc:mysql://IP:3306/mysql?useUnicode=true&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=pwd



#指定mapper文件路径
mybatis.mapper-locations=classpath:mapper/*.xml

#配置mybatis启动日志
mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。