谷粒商城项目2——环境搭建、renren-generator逆向生成所有微服务基本CRUD代码[通俗易懂]

谷粒商城项目2——环境搭建、renren-generator逆向生成所有微服务基本CRUD代码[通俗易懂]续接上文谷粒商城项目1——分布式基础概念、环境搭建_Kaisa..的博客-CSDN博客至此,环境搭建完成了,接下来就是分布式组件了目录二、环境搭建8.人人开源框架搭建(1).克隆项目初始环境(2).创建renren-fast后台管理系统数据库(3).配置renren-fast环境(4).前端环境搭建(5).测试登录9.renren-generator代码生成器(1).根据数据库逆向生成Bean、Mapper等(2).启动renren-generator(3).创建公共微服务模块导入逆向生成代码所需要的各种依

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

 续接上文谷粒商城项目1——分布式基础概念、环境搭建_Kaisa..的博客-CSDN博客

至此,环境搭建完成了,接下来就是分布式组件了

目录

 

二、环境搭建

8.人人开源框架搭建

(1).克隆项目初始环境

(2).创建renren-fast后台管理系统数据库

(3).配置renren-fast环境

(4).前端环境搭建

(5).测试登录

9.renren-generator代码生成器

(1).根据数据库逆向生成Bean、Mapper等

(2).启动renren-generator

(3).创建公共微服务模块导入逆向生成代码所需要的各种依赖

10.整合Mybatis Plus

(1).导入数据库驱动

(2).配置数据源

(3).yml文件配置全局id自增

11.逆向生成所有微服务基本CRUD代码


 

二、环境搭建

8.人人开源框架搭建

(1).克隆项目初始环境

人人开源地址:人人开源 – Gitee.com

3461dae7bfd99da315eefef46a1d5b70.png

 

6ca4d455a38bc31c42a0a58a1c8964e7.png

将renren-fast、renren-fast-vue文件夹下的.git删除,再把renren-fast拖到gulimall文件夹下

c31179fc3e37c921df6e50ffba588147.png

7610760800d628a4f132ff9348c5cef1.png

module添加renren-fast

ff916209ffebafb210218bd8ee57af92.png

(2).创建renren-fast后台管理系统数据库

创建一个gulimall_admin数据库(字符集utf8mb4),并且执行sql语句

f5cab21667ccf83bba42baf5ee0c95d2.png

(3).配置renren-fast环境

打开application.yml,默认显示环境是dev开发环境,所以打开application-dev.yml

635228fad3eac9cb4bd6d5f38b73cb95.png

修改数据库连接配置

839f172b6202c01ae5c1b11bad0c3c77.png

测试启动,成功

8b6aefa9bd6e9841c818878baabb99b1.png

(4).前端环境搭建

需要已经安装node

npm instal 下载依赖的组件

在package.json中记录了项目所有要下载的依赖

0217b190390e43894ca0ead98c1cabe0.png

npm run dev运行前端项目(后端确保打开)

(5).测试登录

26f7473528fbd97e3382bd519ab6707b.png

66a3e3d281b3365822b0c9e7260668f4.png

9.renren-generator代码生成器

使用git clone下来,同样删除文件夹里的.git

将renren-generator复制进我们的项目文件夹

添加module

6cdd7e511bff4fc0e37852e86658f072.png

(1).根据数据库逆向生成Bean、Mapper等

配置generator下的application.yml和generator.properties文件

ea28ba3a71a9d849afd7024dfb346972.png

581e370c5f0ee16f2ff4d1b6a2b30d75.png

(2).启动renren-generator

默认以80端口启动,访问localhost

ea2680a43729b101cdf3bae3008e6850.png

生成代码

fe5a7f592b89b7f1cba17a802678c04b.png

解压生成的文件夹,将main文件夹cv到gulimall_product的src里

69b268cd309084e0921d214a08b55c30.png

(3).创建公共微服务模块导入逆向生成代码所需要的各种依赖

998aa450a4c8d0ce4cbb3a59d170cd33.png

  • 任意打开一个文件都会发现依赖导入报错,为了方便起见,创建一个公共的模块gulimall-common

  • 该模块管理每一个微服务公共的依赖、bean、工具类等

2debd40a12f602d4555cd92a6c0ae958.png

其他微服务模块默认导入common依赖

0f44d4e5268101b6687e2c2f8cb96c1e.png

其他类所缺少的公共类的包

0cce1162b4abab096d3d1e683a4aac4b.png

在gulimall-common下创建

dc609a949c59dba365b2a6e36d587b2d.png

将renrne-fast下的三个类放进common.utils里

50005cf240f6c363fe4937ec2ca8a2bd.png

发现复制的工具类的奔放依赖没有,导入依赖

b81bf2caa7b3eb8239130e6fc005e98e.png

2dff3de609813fcedfc7e91f95c2a9b9.png

导入servlet-api

<!-- servlet-api -->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
    <scope>provided</scope>
</dependency>

10.整合Mybatis Plus

(1).导入数据库驱动

mysql connector依赖版本适配规则:

0e7315d761704611e0a44a5567eab260.png

把依赖导入公共微服务模块

532cdcbad917f7891f30cec2e2957de1.png

(2).配置数据源

在product模块下创建application.yml文件

##配置数据源
spring:
  datasource:
    username: 
    password: 
    url: jdbc:mysql://:3306/gulimall_pms
    driver-class-name: com.mysql.jdbc.Driver

使用MapperScan扫描

a1b448714177e5a87e9ac4ba1cc28100.png

##告诉MybatisPlus ,sql的映射文件位置
mybatis-plus:
  mapper-locations: classpath:/mapper/**/*.xml

(3).yml文件配置全局id自增

yml文件配置全局id自增,否则每一个bean都要单独配置

cdba0dbf8b5636cf1db998ba0d70b4a5.png

80cceafecf2327b335953b96fba2cf50.png

在tes里测试运行,出现报错

652b90d01793cabca80b6c006dcf9c52.png

解决方法:单元测试修改为@SpringBootTest(classes = GulimallProductApplication.class)

2c4b1222279bb96bae11a1d4eb6edbdb.png

数据库中查看(这里执行了两次,所以有两个数据)

ee1cd4b2d88bdd4008e9a17cbd1bb595.png

还可以进行更新查询的测试:

b2213726e1b17ab0ec8664190b40bf81.png

11.逆向生成所有微服务基本CRUD代码

修改对应的微服务名称和表前缀

7f6f1bf2167aae3297792cfbc9ddc870.png

修改数据库

6e21a721e7e53627e60300b620e1a31e.png

启动后生成代码,将代码复制过去就好了

075b0dc10bbbeea1e017046adff8c6da.png

在coupon中修改pom文件导入common依赖

f4ebc54fee6adf73f8791b872603dcc9.png

复制商品中的yml到coupon中,只修改数据库

23b2d6541fdf1a2d188d8e220e18c269.png

启动成功,按照同样方法生成其他系统

c00b997ea0a8fdf3bab4bfbb5f55f921.png

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/164739.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 压测TPS_测压管原理

    压测TPS_测压管原理1.TPS、并发量是什么关系?为什么有的地⽅要⽤TPS?有的地⽅要⽤并发?⾸先,TPS是⼀个吞吐速度的概念,就是每秒处理多少请求。是衡量系统处理能⼒的指标,⽽往往TPS的最⼤值,并⾮系统资源耗尽的时点,因为TPS和系统资源是⼀个抛物线的关系,就是当资源最优配置时往往是TPS最⾼的时间,当资源耗尽时,往往TPS也是⾮常低的。每个TPS指标都会对应当时的并发量。然后说说并发量,并发量往往是对⼀个系统同时操作的⼈数的,或者说同时产⽣的请求数的预估,来衡量系统的承载能⼒。⾔外之意,这个指标⽬的在于看能否同时承载

    2022年10月21日
  • 括号匹配问题 栈c语言(c语言栈实现括号匹配)

    例如:{}[()]、{[()]}、()[]{}这种大中小括号成对出现(位置不限)则为括号匹配,反之则不匹配,如{()[接下来看一下实现方式栈的定义以及相关操作//栈的定义typedefstruct{ charelem[stack_size]; inttop;}seqStack;//栈的初始化voidinitStack(seqStack*s){ s->top=-…

  • hd2012 素数题

    hd2012 素数题

  • C#数组反转

    C#数组反转staticvoidMain(string[]arr){string[]names={“老杨1″,”老李2″,”老王3″,”老牛4″,”老虎5″,”老磁6”};for(inti=0;i<names.Length/2;i++){…

  • FilterDispatcher处理流程「建议收藏」

    FilterDispatcher处理流程「建议收藏」org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter前身是:org.apache.struts2.dispatcher.FilterDispatcher请求被web.xml中定义的过滤器拦截。3层过滤器处理:ActionContextCleanUp,其他过滤器(OtherFilters,SiteM…

  • Java设计模式之结构型:桥接模式

    Java设计模式之结构型:桥接模式

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号