Skip to content
Product backend for Ecommerce.
Java TSQL Shell
Branch: master
Clone or download
Latest commit 89bde3d Sep 18, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
ecommerce-product-service-api refactor flyway Sep 18, 2019
ecommerce-product-service-sdk remove unused dep Sep 18, 2019
gradle refactor lombok Sep 17, 2019
.gitignore multi project Sep 5, 2019
LICENSE Initial commit May 26, 2019
README.md update readme Sep 18, 2019
build.gradle multi project Sep 5, 2019
gradle.properties multi project Sep 5, 2019
gradlew init May 26, 2019
gradlew.bat init May 26, 2019
idea.sh multi project Sep 5, 2019
local-build.sh use plain product id Sep 6, 2019
lombok.config minimize lombok Sep 17, 2019
mysql-clean-local.sh refactor lombok Sep 17, 2019
mysql-login-local.sh refactor lombok Sep 17, 2019
publish-sdk.sh multi project Sep 5, 2019
run.sh multi project Sep 5, 2019
settings.gradle multi project Sep 5, 2019

README.md

项目简介

本项目是Ecommerce系统的产品(Product)子系统,用于向用户展示产品信息。

Ecommerce项目包括:

代码库 用途 地址
ecommerce-order-service Order服务 https://github.com/e-commerce-sample/ecommerce-order-service
ecommerce-order-query-service Order查询服务 https://github.com/e-commerce-sample/ecommerce-order-query-service
ecommerce-product-service Product服务 https://github.com/e-commerce-sample/ecommerce-product-service
ecommerce-inventory-service Inventory服务 https://github.com/e-commerce-sample/ecommerce-inventory-service
ecommerce-shared-model 共享模型,不含Spring https://github.com/e-commerce-sample/ecommerce-shared-model
ecommerce-spring-common Spring共享基础配置 https://github.com/e-commerce-sample/ecommerce-spring-common
ecommerce-devops 基础设施 https://github.com/e-commerce-sample/ecommerce-devops

技术选型

Spring Boot、Gradle、MySQL、Junit 5、Rest Assured、Docker、RabbitMQ/Kafka

本地构建

在本地构建之前必须完成以下步骤:

  • Pull最新devops代码
  • 命令行进入devopsecommerce-sample/devops/local/rabbitmq目录
  • 运行./start-rabbitmq.sh,用于启动RabbitMQ,整个Ecommerce下的所有服务只需启动RabbitMQ一次
  • 进入devopsecommerce-sample/devops/local/zipkin目录
  • 运行./start-zipkin.sh,用于启动zipkin服务器,整个Ecommerce下的所有服务只需启动Zipkin一次
功能 命令 备注
生成IntelliJ工程 ./idea.sh 自动打开IntelliJ
本地运行 ./run.sh 自动启动MySQL,开启HTTP 8082端口,监听5006调试端口
本地构建 ./local-build.sh 启动启动MySQL,运行所有类型的自动化测试
停止MySQL ./gradlew composeDown 将清空所有数据
手动启动MySQL ./gradlew composeUp
发布sdk ./publish-sdk.sh 可以通过修改gradle.properties文件中的version指定版本

领域对象

领域对象 中文名 业务功能
Product 产品 包含名称和价格

测试策略

测试类型 代码目录 测试内容
单元测试 src/test/java 包含核心领域模型(包含领域对象和Factory类)的测试
组件测试 src/componentTest/java 用于测试一些核心的组件级对象,比如Repository
API测试 src/apiTest/java 模拟客户端调用API

技术架构

技术架构图

部署架构

部署架构图

外部依赖

列出项目所依赖的其他系统,比如订单系统依赖于会员系统。

环境信息

列出各个环境的访问方式,数据库连接等。

编码实践

列出常用的公共的编码实践方式。

FAQ

常见问题列表

You can’t perform that action at this time.