第162天学习打卡(谷粒商城4 逆向生成所有微服务的CRUD)

Posted 豆豆tj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第162天学习打卡(谷粒商城4 逆向生成所有微服务的CRUD)相关的知识,希望对你有一定的参考价值。

逆向生成所有微服务的CRUD代码

Product

把在Git上克隆下的RENREN-FAST-VUE拖入Visual Studio Code中之后,执行以下命令

 npm install 
 npm run dev

执行成功后会出现: I Your application is running here: http://localhost:8001,点击这个链接进行查看。

image-20210619163056893

登录这个页面使用的账号和密码都是admin,登录的页面的显示:

image-20210619163350473

在码云上搜索人人开源,选择下面这个:

renren-generator: 人人开源项目的代码生成器,可在线生成entity、xml、dao、service、vue、sql代码,减少70%以上的开发任务 (gitee.com)

image-20210619163707435

image-20210619163800526

在Git里面把下面克隆下来

 $ git clone https://gitee.com/renrenio/renren-generator.git
 

 

image-20210619164005326

把克隆下来的renren-generator里面的.git文件删除,然后放入gulimall这个总文件下

image-20210619164301442

image-20210619164359661

 

image-20210619164635184

修改renren-generator的配置文件

image-20210619165314143

image-20210619170245617

启动这个generator项目之后,访问localhost:80

image-20210619172214274

image-20210619172230537

image-20210619172409819

生成代码的压缩包解压把里面的main文件夹复制到gulimall-product里面的main

image-20210619174118865

image-20210619174334793

创建一个maven模块

image-20210619185900432

创建的gulimall-common里面需要的文件我们从renren-fast里面拷贝

image-20210619195657207

 

image-20210619195912680

gulimall-common里面的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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
         <artifactId>gulimall1-ware</artifactId>
         <groupId>com.doudou.gulimall1</groupId>
         <version>0.0.1-SNAPSHOT</version>
     </parent>
     <modelVersion>4.0.0</modelVersion>
 
     <artifactId>gulimall-common</artifactId>
     <description>每个微服务公共的依赖, bean,工具类等</description>
 
     <properties>
         <maven.compiler.source>8</maven.compiler.source>
         <maven.compiler.target>8</maven.compiler.target>
     </properties>
     <dependencies>
         <dependency>
             <groupId>com.baomidou</groupId>
             <artifactId>mybatis-plus-boot-starter</artifactId>
             <version>3.4.3.1</version>
         </dependency>
         <dependency>
             <groupId>org.projectlombok</groupId>
             <artifactId>lombok</artifactId>
             <version>1.16.18</version>
         </dependency>
         <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpcore -->
         <dependency>
             <groupId>org.apache.httpcomponents</groupId>
             <artifactId>httpcore</artifactId>
             <version>4.4.14</version>
         </dependency>
         <dependency>
             <groupId>commons-lang</groupId>
             <artifactId>commons-lang</artifactId>
             <version>2.6</version>
         </dependency>
         <dependency>
             <groupId>io.renren</groupId>
             <artifactId>renren-fast</artifactId>
             <version>3.0.0</version>
             <scope>compile</scope>
         </dependency>
 
 <!--       导入mysql驱动-->
         <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
             <version>8.0.23</version>
         </dependency>
         <dependency>
             <groupId>javax.servlet</groupId>
             <artifactId>servlet-api</artifactId>
             <version>3.0-alpha-1</version>
             <scope>provided</scope>
         </dependency>
 
 
     </dependencies>
 
 </project>
 

gulimall-product的pom.xml需要导入的依赖

   <dependency>
             <groupId>com.doudou.gulimall1</groupId>
             <artifactId>gulimall-common</artifactId>
             <version>0.0.1-SNAPSHOT</version>
         </dependency>

 

image-20210619191717518

 

image-20210619193315424

修改了IDEA中的renren-generator的逆向工程 要重新生成代码

image-20210619193954984

 

image-20210619195358286

 

image-20210619201751258

 

在gulimall-product中的resources下创建application.yaml文件

application.yaml

 spring:
  datasource:
    username: root
    password: 123456
    url: jdbc:mysql://数据库连接地址:3306/gulimall_pms?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.cj.jdbc.Driver
 mybatis-plus:
  mapper-locations: classpath:/mapper/**/*.xml
  global-config:
    db-config:
      id-type: auto
 server:
  port: 10000
 
 

在gulimall.product的Test里面进行测试1:

 package com.doudou.gulimall.product;
 
 import com.doudou.gulimall.product.entity.BrandEntity;
 import com.doudou.gulimall.product.service.BrandService;
 import org.junit.jupiter.api.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
 @RunWith(SpringRunner.class)
 @SpringBootTest
 class GulimallProductApplicationTests {
     @Autowired
     BrandService brandService;
 
     @Test
    public void contextLoads() {
         BrandEntity brandEntity = new BrandEntity();
         brandEntity.setName("华为");
         brandService.save(brandEntity);
         System.out.println("保存成功...");
    }
 
 }
 

输出结果

image-20210619205152838

image-20210619205608786

在gulimall.product的Test里面进行测试2:

 package com.doudou.gulimall.product;
 
 import com.doudou.gulimall.product.entity.BrandEntity;
 import com.doudou.gulimall.product.service.BrandService;
 import org.junit.jupiter.api.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
 @RunWith(SpringRunner.class)
 @SpringBootTest
 class GulimallProductApplicationTests {
     @Autowired
     BrandService brandService;
 
     @Test
    public void contextLoads() {
         BrandEntity brandEntity = new BrandEntity();
         brandEntity.setBrandId(1L);
         brandEntity.setDescript("华为");
 //       brandEntity.setName("华为");
 //       brandService.save(brandEntity);
 //       System.out.println("保存成功...");
         brandService.updateById(brandEntity);
 
    }
 
 }
 

结果显示

image-20210619210009668

在gulimall.product的Test里面进行测试3:

 package com.doudou.gulimall.product;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.doudou.gulimall.product.entity.BrandEntity;
 import com.doudou.gulimall.product.service.BrandService;
 import org.junit.jupiter.api.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
 import java.util.List;
 
 @RunWith(SpringRunner.class)
 @SpringBootTest
 class GulimallProductApplicationTests {
     @Autowired
     BrandService brandService;
 
     @Test
    public void contextLoads() {
 //       BrandEntity brandEntity = new BrandEntity();
 //       brandEntity.setBrandId(1L);
 //       brandEntity.setDescript("华为");
 ////       brandEntity.setName("华为");
 ////       brandService.save(brandEntity);
 ////       System.out.println("保存成功...");
 //       brandService.updateById(brandEntity);
 
         List<BrandEntity> list = brandService.list(new QueryWrapper<BrandEntity>().eq("brand_id", 1L));
         list.forEach((item)->{
             System.out.println(item);
 
        });
 
 
    }
 
 }
 

结果显示

image-20210619210943899

Coupon

修改配置文件:

image-20210619211442210

image-20210619211558957

 

image-20210619211852802

 

访问localhost:80 ,勾选表名之后生成代码

image-20210619212013192

 

image-20210619212441971

在gulimall-coupon里面导入依赖

pom.xml

     <dependency>
             <groupId>com.doudou.gulimall1</groupId>
             <artifactId>gulimall-common</artifactId>
             <version>0.0.1-SNAPSHOT</version>
         </dependency>

image-20210619212904957

在resources里面新建一个application.yml文件进行配置

 spring:
  datasource:
    username: root
    password: 123456
    url: jdbc:mysql://数据库连接地址:3306/gulimall_sms?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.cj.jdbc.Driver
 mybatis-plus:
  mapper-locations: classpath:/mapper/**/*.xml
  global-config:
    db-config:
      id-type: auto
 server:
  port: 7000
 

测试运行:

image-20210619213547608

访问浏览器页面:localhost:8080/coupon/coupon/list

image-20210619213602314

member

修改配置文件

image-20210619213922435

 

image-20210619214055086

image-20210619214234998

生成代码:

image-20210619214322130

 

image-20210619214748278

 

在gulimall-member的pom.xml中导入相关依赖

 <dependency>
             <groupId>com.doudou.gulimall1</groupId>
             <artifactId>gulimall-common</artifactId>
             <version>0.0.1-SNAPSHOT</version>
         </dependency>

image-20210619215040005

在gulimall-member下的resources下新建application.yml文件

application.yml

 spring:
  datasource:
    username: root
    password: 123456
    url: jdbc:mysql://数据库连接地址:3306/gulimall_ums?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.cj.jdbc.Driver
 mybatis-plus:
  mapper-locations: classpath:/mapper/**/*.xml
  global-config:
    db-config:
      id-type: auto
 server:
  port: 8000

启动测试

image-20210619220314426

注意点:要把application.properties里面的端口注释掉

在浏览器中进行访问:

localhost:8000/member/growthchangehistory/list

image-20210619220609461

order

application.yml

 spring:
  datasource:
    username: root
    password: 123456
    url: jdbc:mysql://数据库连接地址:3306/gulimall_oms?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.cj.jdbc.Driver
 mybatis-plus:
  mapper-locations: classpath:/mapper/**/*.xml
  global-config:
    db-config:
      id-type: auto
 
 
 server:
  port: 9000
 

修改配置文件

image-20210619220916169

 

image-20210619221031366

image-20210619221126389

生成代码

image-20210619221228050

image-20210619221555443

 

在pom.xml中导入相关依赖

  <dependency>
             <groupId>com.doudou.gulimall1</groupId>
             <artifactId>gulimall-common</artifactId>
             <version>0.0.1-SNAPSHOT</version>
         </dependency>

在浏览器中访问

localhost:9000/order/order/list

image-20210619222220581

ware

修改配置文件

image-20210619222446309

image-20210619222603892

image-20210619222651034

image-20210619222808419

image-20210619223204336

以上是关于第162天学习打卡(谷粒商城4 逆向生成所有微服务的CRUD)的主要内容,如果未能解决你的问题,请参考以下文章

第163天学习打卡(项目 谷粒商城5 SpringCloud Alibaba Feign Nacos)

第195天学习打卡(项目 谷粒商城 37新增商品 获取分类下所有属性及分组)

第181天学习打卡(项目 谷粒商城 23 服务端签名后直传)

第205天学习打卡(谷粒商城 购物车需求)

第176天学习打卡(项目 谷粒商城 18 API三级分类 删除效果细化 新增效果)

第165天学习打卡(项目谷粒商城 7 ES6 ECMAScript6.0 )