{"repo":"VLSMB/ecommerce","free":true,"listed":false,"github":"https://github.com/VLSMB/ecommerce","clone":"git clone https://github.com/VLSMB/ecommerce.git","description":"简易版电商","language":"Java","stars":21,"topics":["backend","java","springboot","mybatis","redis"],"license":null,"category":"databases-storage","readme_excerpt":"字节跳动青训营抖音商城项目 “简易版”抖音商城 本项目涉及到的技术框架为：SpringBoot、SpringAI、SpringCloudGateway、SpringCloud、SpringCloudAlibaba、MySQL、MyBatisPlus、Redis、Nacos、OpenFeign、Seata、RabbitMQ、Elasticsearch、Sentinel。 可以参考docker-compose文件的配置来快速搭建第三方技术框架 本项目的接口文档定义可以参考接口文档.md 项目结构 本项目的RabbitMQ支付消息队列模型为： 定时取消订单和定时取消支付都是使用的RabbitMQ延迟队列机制，即为： 交换机- 队列- 死信交换机- 死信队列 的结构 本项目的elasticsearch索引结构的定义为： PUT /products 项目启动方式 可以通过修改父项目的 pom.xml 文件的配置来定义所有第三方框架的相关信息，配置的格式示例： 所有的微服务都会继承父项目中的框架配置信息，不需要额外改动微服务的配置文件。 项目所使用的第三方框架可以使用docker-compose搭建。 docker-compose 文件里有一个环境变量 HOST IP ，在运行 docker compose 前需要对这个环境变量进行赋值，或者直接换成当前主机IP： export $HOST IP=your ip 。 sentinel构建的是它的发行版jar包，对应的DockerFile为： 准备好以上信息就可以进行打包了： 可能存在redis集群未正常搭建的情况，这时候先运行 查看集群信息，如果只有一个节点，或者六个节点里有fail、not connected情况，需要手动重新创建集群 启动之后需要将本项目使用的nacos配置信息添加到nacos的 DEFAULT GROUP 中，以及将数据库表导入到容器内的mysql中。 项目完成的功能 认证中心 - 分发身份令牌 - 续期身份令牌 - 校验身份令牌 用户服务 - 创建用户 - 登录 - 用户登出 - 删除用户 - 更新用户 - 获取用户身份信息 商品服务 - 创建商品 - 修改商品信息 - 删除商品 - 查询商品信息（单个商品、批量商品） 购物车服务 - 创建购物车 - 清空购物车 - 获取购物车信息 订单服务 - 创建订单 - 修改订单信息 - 订单定时取消 结算 - 订单结算 支付 - 取消支付 - 定时取消支付 - 支付 AI大模型 - 订单查询 - 模拟自动下单","default_branch":null,"files":null,"tree":[],"storefront":"/r/VLSMB","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/VLSMB/ecommerce/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}