区块链技术博客
www.b2bchain.cn

SpringCloud-Alibaba微服务架构实战教程—06敏捷开发求职学习资料

本文介绍了SpringCloud-Alibaba微服务架构实战教程—06敏捷开发求职学习资料,有助于帮助完成毕业设计以及求职,是一篇很好的资料。

对技术面试,学习经验等有一些体会,在此分享。

一、前言

在高速发展的今天,微服务通常是把一个大项目根据业务或其他方面划分为了诸多小项目,也就意味着这其中,会产生大量的重复操作,比如上文,建立子模块的步骤就来回进行了7-8次。

假设有几十甚至上百个微服务,岂不是新建文件夹都非常的累人?在工作中需要新增大量对象时,岂不是会发生太多重复劳动?这是无法容忍的。

所以,MyBatis官方开发了一款工具叫 MyBatis Generator 。它只需要少量简单的配置,就可以完成大量的表与Java对象的生成工作,拥有零出错和速度快的优点,让开发人员从重复劳动中解放,更专注于业务逻辑的开发。

二、MyBatis Generator 介绍

官网地址:http://mybatis.org/generator/index.html。

MyBatis Generator,简称MBG,是MyBatis提供的一个代码生成工具,当前版本是1.4.0,发布时间是:2019年11月24日 。
SpringCloud-Alibaba微服务架构实战教程—06敏捷开发

MyBatis Generator

MyBatis Generator 能生成的文件包含三类:

  1. Model/POJO实体文件,一个数据库表对应生成一个Model实体类;
  2. Mapper/Dao接口文件,操作数据库的接口类;
  3. Mapper/Dao.XML 配置文件,是一个写好了单表CRUD的sql语句的xml文件。

注意:MBG便于我们快速开发,但不会生成 Service,Impl和Controller层,因为这是业务逻辑的代码实现地,需要手动建立。

三、使用MyBatis Generator 完善子模块

在前两篇文章中,我们已经构建好了微服务的数据库表,以及父子项目的基础框架。那么接下来,我们就要根据数据库表的结构,结合MyBatis Generator来生成各个服务的实体代码。

我们数据库持久框架选择了 mybatis(为什么不用mybatis plus?) ,因为很多子项目都要跟数据库打交道,所以直接把mybati的依赖,声明在中smartcar-common公共模块中,这样后续就不用重复引入了。

在我们新建子项目的时候,其中一个叫smartcar-common的,它是一个工具类微服务,是公共模块,其较大的作用在于为其他模块提供共用类,且不牵扯其他模块的具体业务逻辑,使用时,只需要在各个模块引入common模块jar包即可。(比如common中引入了mybatis依赖,当其他微服务引入common时,就自动获得了mybatis的能力)。

3.1.引入mybatis依赖到指定位置

smartcar-common项目 的pom中,加入mybatis的依赖,当然也离不开mysql依赖了,也一并引入了。
如下:

<properties>     <java.version>1.8</java.version>     <maven.compiler.source>8</maven.compiler.source>     <maven.compiler.target>8</maven.compiler.target>     <mybatis.version>2.1.4</mybatis.version>     <mysql.version>8.0.20</mysql.version> </properties> <dependencies>     <!--引入mysql依赖-->     <dependency>         <groupId>mysql</groupId>         <artifactId>mysql-connector-java</artifactId>         <scope>runtime</scope>         <version>${mysql.version}</version>     </dependency>     <!--引入mybatis依赖-->     <dependency>         <groupId>org.mybatis.spring.boot</groupId>         <artifactId>mybatis-spring-boot-starter</artifactId>         <version>${mybatis.version}</version>     </dependency> </dependencies>

3.2.引入MyBatis Generator依赖到指定位置

在smartcar-common项目的引入了mybatis、mysql作为公共工具后,我们还需要在其他对应的子项目中引入MyBatis Generator依赖,这样才可以开始生成代码。

接下来,以smartcar-message子项目 为例,在其下pom操作:

3.2.1.引入MyBatis Generator插件和common项目

最主要是新增了1和2两点,pom如下:

<!--关联父工程--> <parent>     <groupId>com.smart.car.root</groupId>     <artifactId>smartcar-project</artifactId>     <version>0.0.1-SNAPSHOT</version> </parent>  <groupId>com.smart.car.message</groupId> <artifactId>smartcar-message</artifactId> <version>0.0.1-SNAPSHOT</version> <name>smartcar-message</name> <description>消息微服务</description>  <properties>     <java.version>1.8</java.version>     <maven.compiler.source>8</maven.compiler.source>     <maven.compiler.target>8</maven.compiler.target> </properties>  <dependencies>     <!--1.引入工具微服务,自动具备mybatis、mysql等依赖-->     <dependency>         <groupId>com.smart.car.common</groupId>         <artifactId>smartcar-common</artifactId>         <version>0.0.1-SNAPSHOT</version>     </dependency>      <!--引入srpingboot-web依赖-->     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter-web</artifactId>     </dependency>     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter</artifactId>     </dependency>     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter-test</artifactId>         <scope>test</scope>     </dependency> </dependencies>  <build>     <plugins>         <plugin>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-maven-plugin</artifactId>         </plugin>          <!--2.代码生成插件-->         <plugin>             <groupId>org.mybatis.generator</groupId>             <artifactId>mybatis-generator-maven-plugin</artifactId>             <version>1.4.0</version>             <configuration>                 <!-- mybatis的代码生成器的配置文件 -->                 <configurationFile>src/test/resources/mybatis-generator-config.xml</configurationFile>                 <verbose>true</verbose>                 <overwrite>true</overwrite>             </configuration>         </plugin>     </plugins> </build>

3.2.2.配置代码生成器的策略文件:

在本项目的src/test/resource目录下(没有就新建),新增一个mybatis-generator-config.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>     <!-- 1. 数据库驱动:选择你的本地maevn仓库的mysql驱动位置-->     <classPathEntry location="D:/zoutao_job/maven_repository/mysql/mysql-connector-java/8.0.20/mysql-connector-java-8.0.20.jar" />      <context id="mysqlTables" targetRuntime="MyBatis3">         <!-- 2.是否去除自动生成的注释 true:是 false:否 -->         <commentGenerator>             <property name="suppressDate" value="true"/>             <property name="suppressAllComments" value="true"/>         </commentGenerator>          <!-- 3. 数据库链接URL,用户名、密码 -->         <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"                         connectionURL="jdbc:mysql://localhost:3306/car_message?useUnicode=true&amp;characterEncoding=utf8&amp;serverTimezone=GMT%2B8&amp;useSSL=false"                         userId="root"                         password="root">             <property name="useInformationSchema" value="true"/>         </jdbcConnection>          <javaTypeResolver>             <property name="forceBigDecimals" value="false"/>         </javaTypeResolver>          <!-- 4.生成model实体类的包名和位置 -->         <javaModelGenerator targetPackage="com.smart.car.message.entity"                             targetProject="src/test/java">             <property name="enableSubPackages" value="true"/>             <property name="trimStrings" value="true"/>         </javaModelGenerator>          <!-- 5.生成mapper.xml配置文件位置 -->         <sqlMapGenerator targetPackage="mapper"                          targetProject="src/test/resources">             <property name="enableSubPackages" value="true"/>         </sqlMapGenerator>          <!-- 6.生成mapper/DAO接口文件位置 -->         <javaClientGenerator type="XMLMAPPER" targetPackage="com.smart.car.message.mapper"                              targetProject="src/test/java">             <property name="enableSubPackages" value="true"/>         </javaClientGenerator>          <!-- 7.要生成表,tableName是数据库中的表名或视图名 domainObjectName是实体类名,多个实体类复制多份改名即可 -->         <table tableName="message_info" domainObjectName="MessageInfo">             <generatedKey column="id" sqlStatement="SELECT REPLACE(MD5(UUID()), '-', '')"/>         </table>          <!--            <table tableName="member_card" domainObjectName="MemberCard">-->         <!--                <generatedKey column="id" sqlStatement="SELECT REPLACE(MD5(UUID()), '-', '')"/>-->         <!--            </table>-->         <!--            <table tableName="member_user" domainObjectName="MemberUser">-->         <!--                <generatedKey column="id" sqlStatement="SELECT REPLACE(MD5(UUID()), '-', '')"/>-->         <!--            </table>-->     </context> </generatorConfiguration>

其中第1点,是对应了你本地的mysql驱动包路径,比如我用的是mysql-connector-java-8.0.11.jar,在maven的仓库中。

第3点注意,在mysql的URL栏,在xml中,使用 &会自动转义而失效,需要改写为:& 代替。

第7点,是根据对应的数据库名称和表填写的,generatedKey 对应的是主键字段名称。
SpringCloud-Alibaba微服务架构实战教程—06敏捷开发

数据库表名称

新增的mybatis-generator-config.xml文件位置如图:

SpringCloud-Alibaba微服务架构实战教程—06敏捷开发

生成器配置文件位置

配置完毕之后,就可以运行MyBatis Generator了。

3.2.3.运行插件,生成代码

一、前言

在高速发展的今天,微服务通常是把一个大项目根据业务或其他方面划分为了诸多小项目,也就意味着这其中,会产生大量的重复操作,比如上文,建立子模块的步骤就来回进行了7-8次。

假设有几十甚至上百个微服务,岂不是新建文件夹都非常的累人?在工作中需要新增大量对象时,岂不是会发生太多重复劳动?这是无法容忍的。

所以,MyBatis官方开发了一款工具叫 MyBatis Generator 。它只需要少量简单的配置,就可以完成大量的表与Java对象的生成工作,拥有零出错和速度快的优点,让开发人员从重复劳动中解放,更专注于业务逻辑的开发。

二、MyBatis Generator 介绍

官网地址:http://mybatis.org/generator/index.html。

MyBatis Generator,简称MBG,是MyBatis提供的一个代码生成工具,当前版本是1.4.0,发布时间是:2019年11月24日 。
SpringCloud-Alibaba微服务架构实战教程—06敏捷开发

MyBatis Generator

MyBatis Generator 能生成的文件包含三类:

  1. Model/POJO实体文件,一个数据库表对应生成一个Model实体类;
  2. Mapper/Dao接口文件,操作数据库的接口类;
  3. Mapper/Dao.XML 配置文件,是一个写好了单表CRUD的sql语句的xml文件。

注意:MBG便于我们快速开发,但不会生成 Service,Impl和Controller层,因为这是业务逻辑的代码实现地,需要手动建立。

三、使用MyBatis Generator 完善子模块

在前两篇文章中,我们已经构建好了微服务的数据库表,以及父子项目的基础框架。那么接下来,我们就要根据数据库表的结构,结合MyBatis Generator来生成各个服务的实体代码。

我们数据库持久框架选择了 mybatis(为什么不用mybatis plus?) ,因为很多子项目都要跟数据库打交道,所以直接把mybati的依赖,声明在中smartcar-common公共模块中,这样后续就不用重复引入了。

在我们新建子项目的时候,其中一个叫smartcar-common的,它是一个工具类微服务,是公共模块,其较大的作用在于为其他模块提供共用类,且不牵扯其他模块的具体业务逻辑,使用时,只需要在各个模块引入common模块jar包即可。(比如common中引入了mybatis依赖,当其他微服务引入common时,就自动获得了mybatis的能力)。

3.1.引入mybatis依赖到指定位置

smartcar-common项目 的pom中,加入mybatis的依赖,当然也离不开mysql依赖了,也一并引入了。
如下:

<properties>     <java.version>1.8</java.version>     <maven.compiler.source>8</maven.compiler.source>     <maven.compiler.target>8</maven.compiler.target>     <mybatis.version>2.1.4</mybatis.version>     <mysql.version>8.0.20</mysql.version> </properties> <dependencies>     <!--引入mysql依赖-->     <dependency>         <groupId>mysql</groupId>         <artifactId>mysql-connector-java</artifactId>         <scope>runtime</scope>         <version>${mysql.version}</version>     </dependency>     <!--引入mybatis依赖-->     <dependency>         <groupId>org.mybatis.spring.boot</groupId>         <artifactId>mybatis-spring-boot-starter</artifactId>         <version>${mybatis.version}</version>     </dependency> </dependencies>

3.2.引入MyBatis Generator依赖到指定位置

在smartcar-common项目的引入了mybatis、mysql作为公共工具后,我们还需要在其他对应的子项目中引入MyBatis Generator依赖,这样才可以开始生成代码。

接下来,以smartcar-message子项目 为例,在其下pom操作:

3.2.1.引入MyBatis Generator插件和common项目

最主要是新增了1和2两点,pom如下:

<!--关联父工程--> <parent>     <groupId>com.smart.car.root</groupId>     <artifactId>smartcar-project</artifactId>     <version>0.0.1-SNAPSHOT</version> </parent>  <groupId>com.smart.car.message</groupId> <artifactId>smartcar-message</artifactId> <version>0.0.1-SNAPSHOT</version> <name>smartcar-message</name> <description>消息微服务</description>  <properties>     <java.version>1.8</java.version>     <maven.compiler.source>8</maven.compiler.source>     <maven.compiler.target>8</maven.compiler.target> </properties>  <dependencies>     <!--1.引入工具微服务,自动具备mybatis、mysql等依赖-->     <dependency>         <groupId>com.smart.car.common</groupId>         <artifactId>smartcar-common</artifactId>         <version>0.0.1-SNAPSHOT</version>     </dependency>      <!--引入srpingboot-web依赖-->     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter-web</artifactId>     </dependency>     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter</artifactId>     </dependency>     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter-test</artifactId>         <scope>test</scope>     </dependency> </dependencies>  <build>     <plugins>         <plugin>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-maven-plugin</artifactId>         </plugin>          <!--2.代码生成插件-->         <plugin>             <groupId>org.mybatis.generator</groupId>             <artifactId>mybatis-generator-maven-plugin</artifactId>             <version>1.4.0</version>             <configuration>                 <!-- mybatis的代码生成器的配置文件 -->                 <configurationFile>src/test/resources/mybatis-generator-config.xml</configurationFile>                 <verbose>true</verbose>                 <overwrite>true</overwrite>             </configuration>         </plugin>     </plugins> </build>

3.2.2.配置代码生成器的策略文件:

在本项目的src/test/resource目录下(没有就新建),新增一个mybatis-generator-config.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>     <!-- 1. 数据库驱动:选择你的本地maevn仓库的mysql驱动位置-->     <classPathEntry location="D:/zoutao_job/maven_repository/mysql/mysql-connector-java/8.0.20/mysql-connector-java-8.0.20.jar" />      <context id="mysqlTables" targetRuntime="MyBatis3">         <!-- 2.是否去除自动生成的注释 true:是 false:否 -->         <commentGenerator>             <property name="suppressDate" value="true"/>             <property name="suppressAllComments" value="true"/>         </commentGenerator>          <!-- 3. 数据库链接URL,用户名、密码 -->         <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"                         connectionURL="jdbc:mysql://localhost:3306/car_message?useUnicode=true&amp;characterEncoding=utf8&amp;serverTimezone=GMT%2B8&amp;useSSL=false"                         userId="root"                         password="root">             <property name="useInformationSchema" value="true"/>         </jdbcConnection>          <javaTypeResolver>             <property name="forceBigDecimals" value="false"/>         </javaTypeResolver>          <!-- 4.生成model实体类的包名和位置 -->         <javaModelGenerator targetPackage="com.smart.car.message.entity"                             targetProject="src/test/java">             <property name="enableSubPackages" value="true"/>             <property name="trimStrings" value="true"/>         </javaModelGenerator>          <!-- 5.生成mapper.xml配置文件位置 -->         <sqlMapGenerator targetPackage="mapper"                          targetProject="src/test/resources">             <property name="enableSubPackages" value="true"/>         </sqlMapGenerator>          <!-- 6.生成mapper/DAO接口文件位置 -->         <javaClientGenerator type="XMLMAPPER" targetPackage="com.smart.car.message.mapper"                              targetProject="src/test/java">             <property name="enableSubPackages" value="true"/>         </javaClientGenerator>          <!-- 7.要生成表,tableName是数据库中的表名或视图名 domainObjectName是实体类名,多个实体类复制多份改名即可 -->         <table tableName="message_info" domainObjectName="MessageInfo">             <generatedKey column="id" sqlStatement="SELECT REPLACE(MD5(UUID()), '-', '')"/>         </table>          <!--            <table tableName="member_card" domainObjectName="MemberCard">-->         <!--                <generatedKey column="id" sqlStatement="SELECT REPLACE(MD5(UUID()), '-', '')"/>-->         <!--            </table>-->         <!--            <table tableName="member_user" domainObjectName="MemberUser">-->         <!--                <generatedKey column="id" sqlStatement="SELECT REPLACE(MD5(UUID()), '-', '')"/>-->         <!--            </table>-->     </context> </generatorConfiguration>

其中第1点,是对应了你本地的mysql驱动包路径,比如我用的是mysql-connector-java-8.0.11.jar,在maven的仓库中。

第3点注意,在mysql的URL栏,在xml中,使用 &会自动转义而失效,需要改写为:& 代替。

第7点,是根据对应的数据库名称和表填写的,generatedKey 对应的是主键字段名称。
SpringCloud-Alibaba微服务架构实战教程—06敏捷开发

数据库表名称

新增的mybatis-generator-config.xml文件位置如图:

SpringCloud-Alibaba微服务架构实战教程—06敏捷开发

生成器配置文件位置

配置完毕之后,就可以运行MyBatis Generator了。

3.2.3.运行插件,生成代码

一、前言

在高速发展的今天,微服务通常是把一个大项目根据业务或其他方面划分为了诸多小项目,也就意味着这其中,会产生大量的重复操作,比如上文,建立子模块的步骤就来回进行了7-8次。

假设有几十甚至上百个微服务,岂不是新建文件夹都非常的累人?在工作中需要新增大量对象时,岂不是会发生太多重复劳动?这是无法容忍的。

所以,MyBatis官方开发了一款工具叫 MyBatis Generator 。它只需要少量简单的配置,就可以完成大量的表与Java对象的生成工作,拥有零出错和速度快的优点,让开发人员从重复劳动中解放,更专注于业务逻辑的开发。

二、MyBatis Generator 介绍

官网地址:http://mybatis.org/generator/index.html。

MyBatis Generator,简称MBG,是MyBatis提供的一个代码生成工具,当前版本是1.4.0,发布时间是:2019年11月24日 。
SpringCloud-Alibaba微服务架构实战教程—06敏捷开发

MyBatis Generator

MyBatis Generator 能生成的文件包含三类:

  1. Model/POJO实体文件,一个数据库表对应生成一个Model实体类;
  2. Mapper/Dao接口文件,操作数据库的接口类;
  3. Mapper/Dao.XML 配置文件,是一个写好了单表CRUD的sql语句的xml文件。

注意:MBG便于我们快速开发,但不会生成 Service,Impl和Controller层,因为这是业务逻辑的代码实现地,需要手动建立。

三、使用MyBatis Generator 完善子模块

在前两篇文章中,我们已经构建好了微服务的数据库表,以及父子项目的基础框架。那么接下来,我们就要根据数据库表的结构,结合MyBatis Generator来生成各个服务的实体代码。

我们数据库持久框架选择了 mybatis(为什么不用mybatis plus?) ,因为很多子项目都要跟数据库打交道,所以直接把mybati的依赖,声明在中smartcar-common公共模块中,这样后续就不用重复引入了。

在我们新建子项目的时候,其中一个叫smartcar-common的,它是一个工具类微服务,是公共模块,其较大的作用在于为其他模块提供共用类,且不牵扯其他模块的具体业务逻辑,使用时,只需要在各个模块引入common模块jar包即可。(比如common中引入了mybatis依赖,当其他微服务引入common时,就自动获得了mybatis的能力)。

3.1.引入mybatis依赖到指定位置

smartcar-common项目 的pom中,加入mybatis的依赖,当然也离不开mysql依赖了,也一并引入了。
如下:

<properties>     <java.version>1.8</java.version>     <maven.compiler.source>8</maven.compiler.source>     <maven.compiler.target>8</maven.compiler.target>     <mybatis.version>2.1.4</mybatis.version>     <mysql.version>8.0.20</mysql.version> </properties> <dependencies>     <!--引入mysql依赖-->     <dependency>         <groupId>mysql</groupId>         <artifactId>mysql-connector-java</artifactId>         <scope>runtime</scope>         <version>${mysql.version}</version>     </dependency>     <!--引入mybatis依赖-->     <dependency>         <groupId>org.mybatis.spring.boot</groupId>         <artifactId>mybatis-spring-boot-starter</artifactId>         <version>${mybatis.version}</version>     </dependency> </dependencies>

3.2.引入MyBatis Generator依赖到指定位置

在smartcar-common项目的引入了mybatis、mysql作为公共工具后,我们还需要在其他对应的子项目中引入MyBatis Generator依赖,这样才可以开始生成代码。

接下来,以smartcar-message子项目 为例,在其下pom操作:

3.2.1.引入MyBatis Generator插件和common项目

最主要是新增了1和2两点,pom如下:

<!--关联父工程--> <parent>     <groupId>com.smart.car.root</groupId>     <artifactId>smartcar-project</artifactId>     <version>0.0.1-SNAPSHOT</version> </parent>  <groupId>com.smart.car.message</groupId> <artifactId>smartcar-message</artifactId> <version>0.0.1-SNAPSHOT</version> <name>smartcar-message</name> <description>消息微服务</description>  <properties>     <java.version>1.8</java.version>     <maven.compiler.source>8</maven.compiler.source>     <maven.compiler.target>8</maven.compiler.target> </properties>  <dependencies>     <!--1.引入工具微服务,自动具备mybatis、mysql等依赖-->     <dependency>         <groupId>com.smart.car.common</groupId>         <artifactId>smartcar-common</artifactId>         <version>0.0.1-SNAPSHOT</version>     </dependency>      <!--引入srpingboot-web依赖-->     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter-web</artifactId>     </dependency>     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter</artifactId>     </dependency>     <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter-test</artifactId>         <scope>test</scope>     </dependency> </dependencies>  <build>     <plugins>         <plugin>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-maven-plugin</artifactId>         </plugin>          <!--2.代码生成插件-->         <plugin>             <groupId>org.mybatis.generator</groupId>             <artifactId>mybatis-generator-maven-plugin</artifactId>             <version>1.4.0</version>             <configuration>                 <!-- mybatis的代码生成器的配置文件 -->                 <configurationFile>src/test/resources/mybatis-generator-config.xml</configurationFile>                 <verbose>true</verbose>                 <overwrite>true</overwrite>             </configuration>         </plugin>     </plugins> </build>

3.2.2.配置代码生成器的策略文件:

在本项目的src/test/resource目录下(没有就新建),新增一个mybatis-generator-config.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>     <!-- 1. 数据库驱动:选择你的本地maevn仓库的mysql驱动位置-->     <classPathEntry location="D:/zoutao_job/maven_repository/mysql/mysql-connector-java/8.0.20/mysql-connector-java-8.0.20.jar" />      <context id="mysqlTables" targetRuntime="MyBatis3">         <!-- 2.是否去除自动生成的注释 true:是 false:否 -->         <commentGenerator>             <property name="suppressDate" value="true"/>             <property name="suppressAllComments" value="true"/>         </commentGenerator>          <!-- 3. 数据库链接URL,用户名、密码 -->         <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"                         connectionURL="jdbc:mysql://localhost:3306/car_message?useUnicode=true&amp;characterEncoding=utf8&amp;serverTimezone=GMT%2B8&amp;useSSL=false"                         userId="root"                         password="root">             <property name="useInformationSchema" value="true"/>         </jdbcConnection>          <javaTypeResolver>             <property name="forceBigDecimals" value="false"/>         </javaTypeResolver>          <!-- 4.生成model实体类的包名和位置 -->         <javaModelGenerator targetPackage="com.smart.car.message.entity"                             targetProject="src/test/java">             <property name="enableSubPackages" value="true"/>             <property name="trimStrings" value="true"/>         </javaModelGenerator>          <!-- 5.生成mapper.xml配置文件位置 -->         <sqlMapGenerator targetPackage="mapper"                          targetProject="src/test/resources">             <property name="enableSubPackages" value="true"/>         </sqlMapGenerator>          <!-- 6.生成mapper/DAO接口文件位置 -->         <javaClientGenerator type="XMLMAPPER" targetPackage="com.smart.car.message.mapper"                              targetProject="src/test/java">             <property name="enableSubPackages" value="true"/>         </javaClientGenerator>          <!-- 7.要生成表,tableName是数据库中的表名或视图名 domainObjectName是实体类名,多个实体类复制多份改名即可 -->         <table tableName="message_info" domainObjectName="MessageInfo">             <generatedKey column="id" sqlStatement="SELECT REPLACE(MD5(UUID()), '-', '')"/>         </table>          <!--            <table tableName="member_card" domainObjectName="MemberCard">-->         <!--                <generatedKey column="id" sqlStatement="SELECT REPLACE(MD5(UUID()), '-', '')"/>-->         <!--            </table>-->         <!--            <table tableName="member_user" domainObjectName="MemberUser">-->         <!--                <generatedKey column="id" sqlStatement="SELECT REPLACE(MD5(UUID()), '-', '')"/>-->         <!--            </table>-->     </context> </generatorConfiguration>

其中第1点,是对应了你本地的mysql驱动包路径,比如我用的是mysql-connector-java-8.0.11.jar,在maven的仓库中。

第3点注意,在mysql的URL栏,在xml中,使用 &会自动转义而失效,需要改写为:& 代替。

第7点,是根据对应的数据库名称和表填写的,generatedKey 对应的是主键字段名称。
SpringCloud-Alibaba微服务架构实战教程—06敏捷开发

数据库表名称

新增的mybatis-generator-config.xml文件位置如图:

SpringCloud-Alibaba微服务架构实战教程—06敏捷开发

生成器配置文件位置

配置完毕之后,就可以运行MyBatis Generator了。

3.2.3.运行插件,生成代码

部分转自互联网,侵权删除联系

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » SpringCloud-Alibaba微服务架构实战教程—06敏捷开发求职学习资料
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们