首页 > 其他分享 >谷粒商城项目-01-服务框架搭建

谷粒商城项目-01-服务框架搭建

时间:2022-12-13 00:11:27浏览次数:45  
标签:01 spring boot springframework cloud 谷粒 gulimall org 商城

代码上传Gitee

先在Gitee上创建账号

去官网下载git,安装

在任意目录下的空白处,右键

 

输入以下命令:

git config --global user.name   "你自己在Gitee上注册用户名"
git config --global user.email "你的gitee 账号绑定的邮箱"

git config -l #查看配置

 

在gtiee上新建代码仓库

 

 

仓库名随便起

分支选择master/develop类型分支

 

idea

在idea上拉取仓库

首先将创建好的仓库地址复制下来

 

再打开idea

都会弹出以下界面,将复制的地址填入

就拉取成功了

 

配置父工程

在该工程新建一个pom.xml文件

 

 

 

粘贴一个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">
    <modelVersion>4.0.0</modelVersion>
​
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
​
</project>

 

添加信息,修改成如下文件

<?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">
    <modelVersion>4.0.0</modelVersion>
​
    <groupId>com.jys.gulimall</groupId>
    <artifactId>gulimall</artifactId>
    <version>1.0-SNAPSHOT</version>
    <name>gulimall</name>
    <description>谷粒商城聚合</description>
​
​
    <!-- 标记当前工程是 父工程-->
    <packaging>pom</packaging>
    <!-- 一会创建各个子工程时,会自动创建modules标签,将各个子工程加入到里面 -->
​
    <!-- springboot 的父依赖,后续所有子model 都可以使用此依赖-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.4.RELEASE</version>
    </parent>
​
    <!--  properties 也可以被所有的子model 直接使用,便于管理子model的版本  -->
    <properties>
        <!-- Environment Settings -->
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <!-- Spring Settings -->
        <!--
            springcloud 版本
          -->
        <spring-cloud.version>Hoxton.SR1</spring-cloud.version>
​
        <!--
                spring-cloud-alibaba 版本
        -->
        <spring-cloud-alibaba.version>2.2.0.RELEASE</spring-cloud-alibaba.version>
    </properties>
​
​
    <!--
        dependencyManagement 是管理标签
            如果我们在 父工程声明依赖和版本,在子工程中只需要引入
            <groupId><artifactId> 不需要在引入version
​
            作用:便于父子工程 jar版本的统一  ,后续所有子工程org.springframework.cloud, com.alibaba.cloud相关的依赖,
                                            都能不需要 声明version,直接使用父工程的 dependencyManagement中配置的version既可
​
​
    -->
    <dependencyManagement>
​
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>${spring-cloud-alibaba.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
​
</project>

 

创建各个子工程(服务)

 

 

首先要知道groupId和artifactId的存在是为了定位到你的项目,所以它们充当着坐标的角色。
groupId:group意思为组,所以理解为是组织Id,也是公司Id,通常它的写法与公司域名类似。一般分三段,即“域.公司名称.子项目”,域指org、com、cn
等,类似计算机网络里学过的,cn指china,com商业,org非盈利组织。
artifactId:即一个具体的项目,命名方式自己决定。

 

以商品服务为例:

服务名为:gulimall-product

 

生成的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>gulimall</artifactId>
        <groupId>com.jys.gulimall</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
​
    <artifactId>gulimall-product</artifactId>
​
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
​
</project>

 

添加基本依赖和信息,修改成如下文件

依赖目前只添加fegin和springboot-web和测试

<?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>gulimall</artifactId>
        <groupId>com.jys.gulimall</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
​
    <artifactId>gulimall-product</artifactId>
    <version>1.0-SNAPSHOT</version>
    <name>gulimall-product</name>
    <description>谷粒商城-商品服务</description>
​
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
​
​
    <dependencies>
        <!--springBoot 相关  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
​
        <!--
            feign 相关依赖
                feign 背后依赖了ribbon
        -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
​
        <!--        测试-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
​
</project>

 

同理创建其他各个服务

仓储服务

服务名:gulimall-ware
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>gulimall</artifactId>
        <groupId>com.jys.gulimall</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
​
    <artifactId>gulimall-ware</artifactId>
    <version>1.0-SNAPSHOT</version>
    <name>gulimall-ware</name>
    <description>谷粒商城-仓储服务</description>
​
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
​
​
    <dependencies>
        <!--springBoot 相关  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
​
        <!--
            feign 相关依赖
                feign 背后依赖了ribbon
        -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
​
        <!--        测试-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
​
​
​
</project>

 

订单服务

服务名:gulimall-order
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>gulimall</artifactId>
        <groupId>com.jys.gulimall</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
​
    <artifactId>gulimall-order</artifactId>
    <version>1.0-SNAPSHOT</version>
    <name>gulimall-order</name>
    <description>谷粒商城-订单服务</description>
​
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
​
​
    <dependencies>
        <!--springBoot 相关  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
​
        <!--
            feign 相关依赖
                feign 背后依赖了ribbon
        -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
​
<!--        测试-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
​
​
​
</project>

 

会员服务

服务名:gulimall-member
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>gulimall</artifactId>
        <groupId>com.jys.gulimall</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
​
    <artifactId>gulimall-member</artifactId>
    <version>1.0-SNAPSHOT</version>
    <name>gulimall-member</name>
    <description>谷粒商城-会员服务</description>
​
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
​
​
​
    <dependencies>
        <!--springBoot 相关  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
​
        <!--
            feign 相关依赖
                feign 背后依赖了ribbon
        -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
​
        <!--        测试-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
​
​
​
</project>

 

优惠券服务

服务名:gulimall-coupon
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>gulimall</artifactId>
        <groupId>com.jys.gulimall</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
​
    <artifactId>gulimall-coupon</artifactId>
    <version>1.0-SNAPSHOT</version>
    <name>gulimall-coupon</name>
    <description>谷粒商城-优惠券服务</description>
​
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
​
​
​
    <dependencies>
        <!--springBoot 相关  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
​
        <!--
            feign 相关依赖
                feign 背后依赖了ribbon
        -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
​
        <!--        测试-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
​
​
​
</project>

 

将父工程中的pom.xml加入到maven插件中管理

 

将父工程中的.gitignore文件打开并修改

.gitignore文件可以配置上传Git时忽略的文件

可以忽略和代码无关的文件

target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
# https://github.com/takari/maven-wrapper#usage-without-binary-jar
.mvn/wrapper/maven-wrapper.jar
​
**/target/
.idea

**/target/是各个模块编译后的编译文件

.idea和代码无关

git

基础框架搭好了,提交到Git上

找到项目所在的目录

 

在空白处右键,点击

 

先输入 git status 查看状态

红色的表示这些文件被修改了,和代码仓库中的不一样

 

输入 git add . 提交到暂存区

 

再输入 git commit -m "添加模块" 提交到本地仓库

 

提交到远程仓库之前!!

在每一次提交到到远程仓库的时候,都要先pull 下来,看看有没有冲突

git pull origin master

如果有冲突,先解决冲突,再次运行

git add .

git commit -m "提交信息"

然后再pull下来,如果发现还是有冲突,重复上面内容,知道没有冲突才进行下一步

 

通过 git push origin master 提交到远程仓库

 

成功后,去Gitee自己创建的代码仓库里发现

 

这样基本的架子搭好了

标签:01,spring,boot,springframework,cloud,谷粒,gulimall,org,商城
From: https://www.cnblogs.com/utsaml/p/16977507.html

相关文章

  • 奋斗百天我要xueC--01
    0x00打个鸡血,浸泡理论,一年打基础,两年见成效,三年有突破。第一次放弃是浪费时间,第二次放弃会打击信心,第三次会摧毁意志。0x01进制转换整数进制转十进制假设当前数字是N......
  • 017.开发请假申请Mapper层
    1.创建请假单实体(com.imooc.oa.entity)LeaveForm.javapackagecom.imooc.oa.entity;importjava.util.Date;publicclassLeaveForm{privateLongformId;......
  • [LeetCode]001-两数之和
    >>>传送门题目给定一个整数数组nums 和一个整数目标值target,请你在该数组中找出和为目标值target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入......
  • [java安全基础 01]SQL+反序列化
    tomcatServlet什么是servletJavaServlet是运行在Web服务器或应用服务器上的程序.它是作为来自Web浏览器或其他HTTP客户端的请求和HTTP服务器上的数据库或应用程序之间......
  • 016.开发请假申请UI界面
    1.leave_form.html<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>请假申请单</title><!--引入样式--><linkrel="styles......
  • 190001 求平方根近似值已知任意一个正数
    点击查看代码<?phpheader('Content-Type:text/html;charset=utf-8');define('ROOT',$_SERVER['DOCUMENT_ROOT']);includeROOT.'/assets/php/head.php';$tit='......
  • day34_0513.找树左下角的值0112.路径总和
    0513.找树左下角的值0112.路径总和【0513.找树左下角的值】一遍acclassSolution{public:intfindBottomLeftValue(TreeNode*root){intresult......
  • day35_0106.从中序与后序遍历序列构造二叉树0105. 前序+中序构造二叉树
    0106.从中序与后序遍历序列构造二叉树前序+中序构造二叉树[106中序+后序构造二叉树]做过简答题但没编过代码以下均是复制粘贴递归代码的思路----三部曲......
  • GitHub+Hexo搭建自己的Blog之-本地环境部署01
    前言之前我的博客没有绑自己的域名,一直在github上放着,访问起来比较麻烦,前阵子在阿里云买了这个域名,配置上之后,就可以通过自己的域名访问了,有些朋友问我这个博客怎么搭的,用的......
  • 2016,Wavelet features for classification of vote snore sounds
    DOI:10.1109/ICASSP.2016.7471669paper......