谷粒商城第二天-项目环境搭建

news2024/11/26 0:48:37

目录

一、前言

二、学习的内容

一、虚拟平台的安装,远程连接虚拟机的工具的安装

二、Docker以及常用软件的安装

一、安装Docker:

 二、安装相关软件

三、开发环境的统一

1. 这里就是调整Maven的下载依赖的地址,改用阿里云镜像地址

2. 然后就是将Maven中的JDK改一下(这个可以在Maven项目中去配的,可以不改)

3. 安装好idea所必须的插件

4. 装好开发前端的vscode所需要的插件

5. 配置好git

四、远程仓库的创建

五、使用人人开源项目逆向后台管理系统

六、使用人人开源项目逆向各个微服务模块

三、完成的进度

四、学到的东西

五、总结


一、前言

经历了前一天的项目的介绍,以及对微服务的简单概述之后就是正式的开启项目了,开启项目之前第一步当然是环境的搭建。环境的搭建:其实无非大的就下面三点:

1.  虚拟机的环境搭建

2.  数据库的搭建

3 . idea项目搭建

二、学习的内容

一、虚拟平台的安装,远程连接虚拟机的工具的安装

虚拟平台可以使用VMware、VirturalBox、远程连接虚拟机的工具可以是vagrant,也可以是XShell。当然我还是喜欢VMware + XShell的组合。

二、Docker以及常用软件的安装

一、安装Docker:

1. 先删除原有的(可选)

下载之前,可以先将之前的给卸载

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine \
                  docker-ce

2. 安装yum工具以及配置下载镜像

安装yml工具:

yum install -y yum-utils \
           device-mapper-persistent-data \
           lvm2 --skip-broken

配置软件的下载镜像弟子,配置阿里云镜像:

# 设置docker镜像源
yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

yum makecache fast

3. 安装Docker

安装社区版:

yum install -y docker-ce

4. 关闭防火墙

# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld

5. 设置Docker仓库的镜像地址

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://vg5ljeup.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

 二、安装相关软件

无非就是安装最基础的MySql和Redis。

给出Mysql和Redis的启动文件:

mysql:

docker run \
--restart=always \
-p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql

注意启动之前得现在宿主机的conf文件夹中得先有my.cnf文件:

里面主要就是相关参数的配置,比如说连接数、字符集啥的,如下:

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci' init_connect='SET NAMES utf8' character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

 其实启动MySQL的过程中有许多报错,报错我都记录在这篇博文里了:

(4条消息) 虚拟机使用docker安装MySql出现的问题,Navicat连不上MySql_渣瓦攻城狮的博客-CSDN博客

Redis的启动就比较简单了,基本上没什么错误,启动文件如下:

docker run \
--restart=always \
-p 6379:6379 --name redis \
-v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf \
--requirepass "123456"

 需要注意的就是这种方式,需要先创建出redis.conf文件,也就是说这种直接挂载的方式,不能是直接的文件,如果有就得先创建出文件。

三、开发环境的统一

1. 这里就是调整Maven的下载依赖的地址,改用阿里云镜像地址

在maven的setting文件中的mirrors里,加上阿里云镜像

<mirror> 
  <id>alimaven</id>  
  <name>aliyun maven</name>  
  <url>https://maven.aliyun.com/repository/public/</url>  
  <mirrorOf>central</mirrorOf> 
</mirror>

2. 然后就是将Maven中的JDK改一下(这个可以在Maven项目中去配的,可以不改)

<profiles>
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>

3. 安装好idea所必须的插件

常用的插件有MyBatisx,可以逆向生成各层代码

还有Lombok,这个插件现在idea没有了,如果需要安装的话,需要自己去安装,然后idea配置一下

还有gitee插件

当然这里还推荐日志按照不同的级别进行显示的插件:grep console

还有alibaba开发规范的插件

alibaba java coding guidelines

以及maven搜索依赖的插件

maven-search

4. 装好开发前端的vscode所需要的插件

Vscode 安装开发必备插件 Vetur —— 语法高亮、智能感知、Emmet 等 包含格式化功能, Alt+Shift+F (格式化全文),Ctrl+K Ctrl+F(格式化选中代码,两个 Ctrl 需要同时按着) EsLint —— 语法纠错 Auto Close Tag —— 自动闭合 HTML/XML 标签 Auto Rename Tag —— 自动完成另一侧标签的同步修改 JavaScript(ES6) code snippets — — ES6 语 法 智 能 提 示 以 及 快 速 输 入 , 除 js 外 还 支 持.ts,.jsx,.tsx,.html,.vue,省去了配置其支持各种包含 js 代码文件的时间 HTML CSS Support —— 让 html 标签上写 class 智能提示当前项目所支持的样式 HTML Snippets —— html 快速自动补全 Open in browser —— 浏览器快速打开 Live Server —— 以内嵌服务器方式打开 Chinese (Simplified) Language Pack for Visual Studio Code —— 中文语言包

5. 配置好git

 就是下载好git,创建好一个用户。

git config --global user.name "username"

git config --global user.email "邮箱地址"

配置ssh免密登录

ssh-keygen -t rsa -C "xxxxx@xxxxx.com

然后连续三次回车

通过cat ~/.ssh/id_rsa.pub命令或者是用户目录下,id_rsa.pub进行查看

然后复制好内容,进入到gitee中,进入到设置中,配好ssh 

可以使用ssh -T git@gitee.com 检测是否配置成功

四、远程仓库的创建

在gitee上面创建好远程仓库,配好忽略文件、以及readme,还有分支模型

 配置好后,初始项目长这样

然后将这个项目拉到idea里面,可以使用链接的方式,如果此前在idea上配好了gitee账户,则可以直接拉取。

五、使用人人开源项目逆向后台管理系统

就是使用gitee的人人开源项目,里面的后台管理系统的前台与后台,然后克隆拉取代码

没带vue的就是后台,进入到里面复制好地址,使用git clone 地址     克隆到本地

 将项目里面的.git文件夹给删了。然后复制一份到idea项目中,直接复制进去就行了。如果已存在父工程的情况下,则需要在父工程的maven里面再moudles里面新建一个moudle

但凡一个服务,先得是创建好服务对应的数据库。所以在idea里查看项目的时候,把数据库的sql复制下来,在navicat里面运行sql,建好admin的数据库。

现在后台就搭建好了。

然后就是进入到vscode里面打开前台项目,第一次跑前台项目的时候需要安装好这个项目的依赖,使用npm install命令,然后使用npm run dev命令运行。当然如果想正确的执行这两个命令,就得在电脑上面安装好node环境。

运行起来后,可以与后台进行联调

六、使用人人开源项目逆向各个微服务模块

和上面的克隆后台系统一样,这里就克隆下逆向工程的项目

同样也是复制到idea里面去,同样记得先将.git文件夹删了。

使用是目的是为了为每个微服务的提前造好相关的各层代码。现在每个微服务还未创建,先将每个服务创建好。这里直接使用SpringBoot的初始化器进行创建Boot项目

 这里千万注意Type选择Maven,不然创建之后都没有Maven。

注意:但凡是创建了新的项目,就得先将工程的JDK还有Maven配好。

 一些全局的配置,在还未创建项目的时候就可以先配置好。可以先将字符集、Maven、插件配置好

 进入到项目的第一件事就是把工程模块的JDK配置好。必要时检查一下编译的JDK版本:

 将配置弄好之后。

创建微服务之前,先将每个微服务对应的数据库给装好。

接下来就是创建好一个一个的微服务项目,选上每个服务选择好boot版本现在是2.7.12的boot版本jdk8可以使用,但是如果是高版本的boot那么就得使用jdk17了,以及所需要的必备依赖,比如说web还有openfeigen:

 创建好了之后,就得设置一下.gitignore文件,虽说创建boot项目的时候自带,但是有些文件还是没有被忽略掉的,需要加上。

现在就可以尝试着提交到远程仓库上面去了,可以看到忽略的文件是没有上传上去的,提交到远程仓库之前先提交到本地仓库。 

老师的步骤是先将各个子工程创建出来,然后再将父工程创建出来,在其父工程的Maven中使用modules配置好子工程。这是一种方式,当然也可以先将父工程创建出来,也就是先就将父工程弄成一个Maven工程,然后子工程直接在下面进行创建,就能省去自己去建立父子关系了,idea能自动的帮助我们建立好。

现在来说就是每个微服务的创建好了,之后就是使用逆向工程为每个微服务创建好相应的代码。

同样的在工程中导入好逆向工程项目。

然后再逆向工程的项目中的application.yml文件中指定好,当前逆向的微服务所对应的数据库:

重点就在虚拟机的ip地址,数据库的名字,以及用户名和密码。

然后再generator.properties文件里配置好,逆向生成的文件的路径,制定好包名,模块名

完成好这两步之后就能在包下生成许多的包了,4个。然后这里面肯定会爆很多的红,因为缺少一些类,缺少一些依赖。

因为许多服务都是同样的情况,所以将这些公共的全放到commen模块中,common模块的maven的pom文件放下面这些依赖没问题:

<dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.2</version>
        </dependency>

        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-j</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.11</version>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.11.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpcore</artifactId>
            <version>4.4.15</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
        </dependency>

 主要就是Mysql驱动、MybatisPlus启动器、还有servlet-Api依赖等

然后一些不是依赖中的一些要有的类,其实在之前的后台管理系统的后端代码中就基本上都有了,下面是摸索出来的:

在这篇博文的代码包里面。

写好了公共模块,然后就是各个微服务模块都导入这个common模块,然后基本上就没什么问题了。

三、完成的进度

这个项目的虚拟机环境的搭建,以及数据库的配置,还有微服务模块的搭建均已完成。

四、学到的东西

走了整个一套环境搭建的流程,又熟悉了环境搭建的流程。

其中先创建远程仓库,然后基于远程仓库拉下来然后再基于这个写代码。这个属实是学到了。

这里学到的新东西是使用人人开源项目来搭架子,使用它来创建好后台管理系统的前台与后台,以及使用它来逆向生成每个微服务中的基础代码。

五、总结

主要是熟悉了搭建环境的过程,然后就是学习了如何使用人人开源项目来直接搭建后台管理系统,以及直接逆向生成基础代码。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/651663.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

11.vue3医疗在线问诊项目 - _药品订单 ==> 支付页面、支付详情、支付结果、订单详情、物流信息、高德地图工具

11.vue3医疗在线问诊项目 - _药品订单 &#xff1e; 支付页面、支付详情、支付结果、订单详情、物流信息、高德地图工具 药品订单-支付页面-路由 目标&#xff1a;配置路由&#xff0c;分析药品支付组件结构 1&#xff09;路由与组件 {path: /medicine/pay,component: () >…

系列十一、MongoDB副本集

一、概述 MongoDB副本集&#xff08;Replica Set&#xff09;是有自动故障恢复功能的主从集群&#xff0c;有一个Primary节点和一个或者多个Secondary节点组成。副本集没有固定的主节点&#xff0c;当主节点发生故障时&#xff0c;整个集群会选举一个主节点 为系统提供服务以保…

大数据测试基本知识

常用大数据框架结构 1.大数据测试常用到的软件工具 工具推荐&#xff0c;对于测试数据构造工具有&#xff1a;Datafaker、DbSchema、Online test data generator等&#xff1b;ETL测试工具有&#xff1a;RightData、QuerySurge等&#xff1b;数据质量检查工具&#xff1a;great…

SpringBoot医药管理系统设计+第三稿+文档

博主介绍&#xff1a;✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 项目名称 SpringBoot医药管理系统设计第三稿文档 视频演示 SpringBoot医药管理系统设计第三稿中期检查表ppt外文文献翻译文献综述开题任务书查重报告安装视频讲…

【计算机网络】第五章数据链路层-电子科技大学2023期末考试

第五章 数据链路层 学习目的 目的1&#xff1a;理解链路层服务的主要功能 差错检查、纠错 共享广播信道&#xff1a;多点接入问题(multiple access) 链路层寻址(link layer addressing) 局域网技术&#xff1a;Ethernet, VLANs 目的2&#xff1a;链路层技术的实现 点到点…

【Java入门】-- Java基础详解之【程序控制结构】

目录 1.程序流程控制介绍 2.顺序控制 3.分支控制if-else 4.嵌套分支 5.switch分支语句 6.for循环控制&#xff08;重点&#xff09; 7.while循环控制 8.do...while循环控制 9.多重循环控制&#xff08;重难点&#xff01;&#xff09; 10.跳转控制语句break 11.跳转…

计算机课程个性化内容推荐系统的设计与实现+文档等

博主介绍&#xff1a;✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 项目名称 计算机课程个性化内容推荐系统的设计与实现文档等 视频演示 计算机课程个性化内容推荐系统的设计与实现 系统介绍 计算机课程个性化内容推荐系统的设…

Car Guide

文章目录 科目一第一章 机动车驾驶证申领和使用规定第一节 驾驶证的许可&#xff1f;种类和有效期第二节 驾驶证的申领第三节 驾驶证的使用第四节 驾驶考试第五节 违法记分制度 第二章 交通信号第一节 交通信号灯第二节 交通标志第三节 交通标线第四节 交警手势 第三章 道路交通…

Ansible之playbooks剧本

目录 一、playbooks1、playbooks简述2、playbooks剧本格式3、playbooks组成部分4、playbooks启动 二、playbook编写 apache 的yum安装部署剧本三、playbook编写 nginx 的yum安装并且能修改其监听端口的剧本四、 playbook的定义、引用变量1、基础变量的定义与引用2、引用fact信息…

Stable Diffusion webui 基础参数学习

哈喽&#xff0c;各位小伙伴们大家好&#xff0c;最近一直再研究人工智能类的生产力&#xff0c;不得不说随着时代科技的进步让人工智能也得到了突破性的发展。而小编前段时间玩画画也是玩的不可自拔&#xff0c;你能想想得到&#xff0c;一个完全不会画画的有一天也能创作出绘…

【计算机网络】第一章概论-电子科技大学2023期末考试

相关术语 URI&#xff1a;Uniform Resource Identifier 统一资源标识符&#xff0c;指的是一个资源 URL&#xff1a;Uniform Resource Location 统一资源定位符&#xff0c;URI的子集&#xff0c;用地址定为的方式指定一个资源 URN&#xff1a;Uniform Resource Name 统一资…

MySQL事务相关笔记

杂项 InnoDB最大特点&#xff1a;支持事务和行锁&#xff1b; MyISAM不支持事务 介绍 一个事务是由一条或者多条对数据库操作的SQL语句所组成的一个不可分割的单元&#xff0c;只有当事务中的所有操作都正常执行完了&#xff0c;整个事务才会被提交给数据库。事务有如下特性…

【使用指导】wifi蓝牙二合一模块LCS2028与服务器的数据收发功能测试指导

在物联网智能家居、智能照明、智能楼宇、智慧工厂、智能制造等领域的数据透传、智能控制应用中&#xff0c;支持UART串口通信的低功耗WiFi蓝牙二合一模块应用极为广泛。模块性能测试环节中会测试模块与服务器的数据收发功能&#xff0c;确保功能性能够满足项目应用需求。本篇就…

深入理解 SpringBoot 日志框架:从入门到高级应用——(四)Logback 输出日志到 QQ邮箱

文章目录 获取 QQ 邮箱授权码添加依赖编写 SMTPAppender运行结果 要将 Logback 输出日志到 QQ 邮箱&#xff0c;需要执行以下步骤&#xff1a; 在 QQ 邮箱中获取授权码。在你的 SpringBoot 项目中添加 Logback 依赖和 SMTP 协议实现库&#xff0c;例如 Email 依赖。在 Logback…

NOTA-Me-Tetrazine,NOTA-甲基四嗪,大环化合物具有良好的配位和鳌合能力

文章关键词&#xff1a;甲基四嗪修饰大环配体&#xff0c;双功能螯合剂&#xff0c;大环化合物 ●中文名&#xff1a;NOTA-甲基四嗪 ●英文名&#xff1a;NOTA-Me-Tetrazine ●外观以及性质&#xff1a; 西安凯新生物科技有限公司供应的​NOTA-Me-Tetrazine中四嗪修饰大环配体&…

LaTeX插入参考文献

接着上一篇&#xff0c;用EndNote组织参考文献&#xff0c;然后再导入到LeTex中感觉不太好用&#xff0c;然后就学习了一下BibTeX来管理参考文献&#xff0c;发现还可以&#xff0c;这里记录一下&#xff0c;方便以后查阅。 LaTeX插入参考文献 thebibliographyBibTeX参考资料 t…

总结901

目标规划&#xff1a; 月目标&#xff1a;6月&#xff08;线性代数强化9讲&#xff0c;考研核心词过三遍&#xff09; 周目标&#xff1a;线性代数强化5讲&#xff0c;英语背3篇文章并回诵&#xff0c;检测 每日规划 今日已做 1.回环复习之前背过的文章。 2.背单词&#xf…

想了解3,4,6-Tri-O-acetyl-D-galactal,4098-06-0,D-三乙酰半乳糖烯?点击这里查看详细信息!

文章关键词&#xff1a;糖化学试剂&#xff0c;三乙酰半乳糖烯 3,4,6-Tri-O-acetyl-D-galactal |3,4,6-O-三乙酰基-D-半乳糖烯&#xff0c;D-三乙酰半乳糖烯|CAS&#xff1a;4098-06-0 | 纯度&#xff1a;95%一、结构式&#xff1a; 二、试剂参数信息&#xff1a; CAS&#x…

Redis从入门到精通进阶篇之持久化RDB和AOF机制详解

文章目录 RDB持久化AOF持久化RDB与AOF的混合持久化 Redis 6的持久化机制主要有两种&#xff1a;RDB&#xff08;Redis DataBase&#xff09;和AOF&#xff08;Append Only File&#xff09;。本文将详细介绍这两种持久化方式的工作原理和配置要点。 RDB持久化 RDB持久化是将当…

中国电子学会2023年05月份青少年软件编程Scratch图形化等级考试试卷一级真题(含答案)

2023年5月 Scratch一级真题 题数&#xff1a;37 分数&#xff1a;100 测试时长&#xff1a;60min 一、单选题(共25题&#xff0c;共50分) 1. 看图找规律&#xff0c;请问下图红框中是&#xff1f;&#xff08;D&#xff09;&#xff08;2分&#xff09; A. B. C. …