欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

分布式电商项目六:使用人人开源的代码生成器反向开发代码

程序员文章站 2022-04-14 23:21:44
...

分布式电商项目六:使用人人开源的代码生成器反向开发代码

克隆人人开源的代码生成器项目
同之前克隆的fast项目,不再演示。删除掉.gti版本控制文件夹,放入到mall-1995项目中。
之后编辑pom文件,添加模块:

<module>renren-generator</module>

之后更新maven依赖,修改模块的配置文件。每一次添加开源项目,都要优先修改配置文件:
配置文件有两个,先修改application.yml,主要修改mysql配置:


# mysql
spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    #MySQL配置
    driverClassName: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/renren_fast?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
    username: renren
    password: 123456

之后修改generator.properties,修改

#代码生成器,配置信息
mainPath=com.lastingwar
#包名
package=com.lastingwar.mall
moduleName=product
#作者
author=yhm
#Email
email=aaa@qq.com
#表前缀(类名不会包含表前缀)
tablePrefix=pms_

之后在src\main\resources\template 目录下修改模板,
Controller.java.vm文件下的RequiresPermissions都不需要,全部注解掉,包括import中的。
也可以修改别的模板
随后运行generator :
分布式电商项目六:使用人人开源的代码生成器反向开发代码
可以看到已经在端口80运行。
进入之后,页面如下
分布式电商项目六:使用人人开源的代码生成器反向开发代码
可以看到显示了数据库中pms对应的所有的表,全选之后,生产代码。随后会下载一个压缩包,解压缩之后,把里面的main文件夹放到对应的微服务文件目录下,将两个main文件夹覆盖。
在IDEA中打开对应的代码,会发现报错的情况,这主要是因为缺少基本的依赖:

其中缺少的commom包依赖,在renren-fast中有提供,我们可以创建一个自己的common模块来保存这些基本的依赖。
分布式电商项目六:使用人人开源的代码生成器反向开发代码
分布式电商项目六:使用人人开源的代码生成器反向开发代码

在common模块的pom文件中可以添加注解:

<description>每一个微服务依赖的公共组件,bean和工具类</description>

随后在对应的微服务中添加对common的依赖,编辑对应的pom文件添加:
之后的微服务每一个都需要

		<dependency>
            <groupId>com.lastingwar.mall-1995</groupId>
            <artifactId>mall-common</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>

制作common公共依赖模块

首先添加Mybatis-plus和lombok依赖:

<!--  Mybatis-plus -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.3.1</version>
        </dependency>
<!--  lombok -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.12</version>
        </dependency>

然后拷贝renren-fast中的基础类依赖:
在common模块中,新建包com.lastingwar.common,将renren-fast中的common.utils和xss的文件拷贝过来:
分布式电商项目六:使用人人开源的代码生成器反向开发代码
随后会发现这些复制的文件中,有很多依赖没有导入,我们到maven官网进行查询导入:
依次添加:

	<!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpcore -->
		<dependency>
		    <groupId>org.apache.httpcomponents</groupId>
		    <artifactId>httpcore</artifactId>
		    <version>4.4.13</version>
		</dependency>
		<dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version>2.6</version>
        </dependency>

随后重新加载,common中的文件就没有报错了。
**Query文件报错是因为同样的类,之前导入的是import io.renren.common.xss.SQLFilter;修改为自己添加的类import com.lastingwar.common.xss.SQLFilter;**SQLFilter同理

这样我们所有的类就都不报错的,之后我们也使用相同的方法进行数据库相关文件的代码生产。

相关标签: 电商