【xbin-store】基于springboot的分布式B2C电商开源项目

2023-11-19

原文地址:https://blog.csdn.net/g290095142/article/details/79105219

致敬原作者

CSDN下载地址

核心技术(后台)

  • 使用Spring Boot 构建整个项目 去除 XML 配置
  • Maven构建项目
  • Jenkins作为持续集成
  • 采用Dubbox作为RPC框架
  • kryo序列化
  • 使用 Apollo 配置中心(目前这个有问题,导致项目不能启动,我已经全部注释)
  • 使用Spring+Spring MVC+MyBatisSSM框架
  • 数据库使用MySQLRedis
  • 页面引擎采用 Beetl
  • 网页采用freemarker生成静态化页面
  • 存储采用FastDFS存储图片等文件
  • 采用Solr实现搜索服务
  • Swagger2 生成 RESTful Apis文档
  • 负载均衡使用Nginxkeepalived实现高可用
  • 采用Spring Scheduled做任务调度
  • 消息中间件采用RabbitMQ
  • 在分布式事务上则采用了TCC解决订单支付方面时效性要求性高的分布式事务,可靠的消息服务则来解决如会计记录等时效性要求低的分布式事务.

核心技术(前台)

  • 采用基于AdminLTEroncoo-adminLTE(主要增加了Ajax的布局模式)
  • AdminLTE集成太多Js这里就不一一列举了

项目结构图

  • 列表内容

目前的开发进度

  • 列表内容

先看效果图

  • 这里写图片描述
  • 这里写图片描述
  • 这里写图片描述

运行环境

  • jdk1.8+tomcat+mysql+maven+idea

安装过程(一定先看作者的安装视频,视频地址链接:https://pan.baidu.com/s/1qZTPwlu 密码:irn0)

  • 源码目录结构,我使用的idea直接导入,导入正确的结构,会出现各种jar包问题,我直接把本地的仓库全部上传了,maven本地仓库下载链接:https://pan.baidu.com/s/1o9Tn3HC 密码:iu2a 直接覆盖本地的.m2下的文件即可
  • 注释掉里面所有关于私服的配置,阿里云镜像的保留,只注释私服
    这里写图片描述
  • 使用 Apollo 配置中心,关于Apollo自行百度,如果使用这个配置会一直报一个关于com/google/guava,不用管他,把所有的@EnableApolloConfig全部注释掉
    这里写图片描述
  • 此时项目编译应该不会出现红线错误,如果有还是存在,建议更新下maven索引,会有点长,等他更新完,重启idea
    这里写图片描述
  • 如果出现spring-boot-starter-druid,doubbox,redis找不到的情况,建议直接使用idea导入源码,install到本地仓库
    这里写图片描述
  • 关于虚拟机的搭建,为了方便测试,我在虚拟机上的Windows上搭建了zookeeper+dobbuo+redis+jdk1.8+tomcat8的环境,使用本地的mysql,fastdfs不影响程序运行没有搭建,直接使用VMware Fusion 导入即可使用,镜像下载地址
  • 启动zookeeper,在启动tomcat,redis,直接输入,启动顺序一定是先zookeeper在tomcat,http://127.0.0.1:8080/dubbo-admin-2.5.5/会要一个填写账号密码的弹窗,默认账号密码是root/root,我虚拟机的运行情况
    这里写图片描述
  • 修改项目中的所有的yml文件,有两个要注意的地方,一是zookeeper的注册地址,而是doubbo的地址,zookeeper写虚拟机的地址,端口不用变,doubbo直接注释掉或者填写本机的IP,如果出现IP问题,百度VMware固定IP的设置
    这里写图片描述
  • 关于druid密码加密的问题,我即是加密一样出现一个密码未加密的错误,建议是直接改为false,然后填写未加密的密码
    这里写图片描述
  • 接下里开始编译项目,使用install -DskipTests
    这里写图片描述
  • 正确的编译截图,如果还有问题,一般都是jar的问题
    这里写图片描述

项目运行

  • 启动XbinStoreServiceRedisApplication
  • 启动XbinStoreServiceNotifyApplication
  • 启动XbinStoreServiceSSOApplication
  • 启动XbinStoreWebSSOApplication
  • 整个项目所有的static文件目录不能出现任何错误,js.css这些一样不行,全部启动成功,输入localhost:8104/login就可以看到登陆页面
  • 关于后台登陆密码的问题,作者使用DigestUtils.md5DigestAsHex去加密密码,我没有使用fastdfs所以直接生成的密码
    这里写图片描述

本项目最终实现的目标 点我查看最后完成效果
另外需要学习资料的加我V,本人做Java,一起学习交流的朋友可以加我V,相互学习
这里写图片描述

版权声明:原创博客,微信:18518215883 https://blog.csdn.net/G290095142/article/details/79105219

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【xbin-store】基于springboot的分布式B2C电商开源项目 的相关文章

随机推荐

  • 什么是Java?

    刚开始学习Java时 对于老师讲述的Java的发展历程毫无兴趣 觉得只要会用就行了 直到有一天我的朋友突然问我 你们学的Java是什么呀 面对他突如其来的问题 我一下有点不知所措 刚想开口却又不知道说些什么 只能慢慢的吐出那几个字 一门编程
  • IDEA 错误: 找不到或无法加载主类

    问题 问题就是spring boot项目在IDEA中 启动类右键运行 控制台提示 错误 找不到或无法加载主类 xxx xxx xxx xxxx 启动类包名 原因 问题原因 运行启动类的时候代码没有编译到target目录下如下图 发现编译过后
  • ubuntu16.04 安装 pcl1.7

    不使用源码编译的方式 而是使用官网prebuild版本的方式安装 sudo add apt repository ppa v launchpad jochen sprickerhof de pcl sudo apt get update s
  • python指定宽度20输出_Python 以指定宽度格式化输出

    Python 以指定宽度格式化输出 2020 05 07 当对一组数据输出的时候 我们有时需要输出以指定宽度 来使数据更清晰 1 mat 20 t 28 t 32 print mat format 占4个长度 占8个长度 占12长度 2 如
  • JS关于Object.assign()和浅拷贝、深拷贝

    什么是浅拷贝和深拷贝 js中存对象都是存地址的 浅拷贝指向的是同一块内存区块 深拷贝则是另外开辟了一块区域 两个例子 var obj1 num 100 str abc var obj2 obj1 obj2 num 200 console l
  • 图像处理神器 ImageMagick 命令介绍

    安装完 ImageMagick 打开命令行 输入相应命令即可处理图像 所有命令前面都要加 magick 网上的教程都没说 也可能是我自己环境没配置吧 说明 内的命令表示是可选的 内表示是示例或者代号而已 magick convert sou
  • 每日写题分享--机器人的运动范围//DFS深度优先搜索/递归

    题目描述 题目链接戳此 解题思路 这题和上题矩阵中的路径可以对比起来看 同样也是深度优先搜索 DFS 由于机器人从 0 0 位置向下向右探索 右边的下面和下面的右边可能会重复 所以可以将走过的路径记录下来置为true防止重复走 代码实现如下
  • 电脑一体机电脑,一体机电脑哪款好_一体机电脑品牌推荐【热门机型】-太平洋IT百科...

    一体机电脑哪款好 一体机电脑将主机部分和显示器部分高度集成在一起 因此一体机电脑被厂商称为All In One AIO电脑或屏式电脑 优秀的外观设计加上良好的硬件性能 一体机电脑成为很多家庭甚至是办公用户的选择 我们不妨从一体机电脑的背景开
  • PDF如何解密?介绍几个简单小方法

    PDF格式是我们常见的文件格式 平时学习或者工作的文件都是以PDF格式来发送的 一方面因为它不能随便进行编辑 一方面是因为它还可以设置加密 但是设置加密很简单 后续需要对加密文档进行修改编辑的时候就不简单了 每次打开都需要输入密码 操作步骤
  • pinia 实战IM----注册TIM-plugin插件

    目录 初始化TIM实例 定义参数类型 扩展pinia插件 添加新的属性 添加新的选项 标注插件类型 为新的定义选项添加类型 为新的 state 添加类型 初始化pinia TIM插件 扩展 pinia属性 与 选项 仓库中使用 pina中注
  • openGauss学习笔记-59 openGauss 数据库管理-相关概念介绍

    文章目录 openGauss学习笔记 59 openGauss 数据库管理 相关概念介绍 59 1 数据库 59 2 表空间 59 3 模式 59 4 用户和角色 59 5 事务管理 openGauss学习笔记 59 openGauss 数
  • PX4log文件分析工具

    功能介绍 该工具可读取PX4存储的bin文件 自动将其进行解析 解析后可根据需求 选择需要导出的数据 将数据导出到txt文件中 几点说明 应用场景 需要将飞行数据导入到matlab中 对数据进行分析 使用原始的sdlog2pumy py文件
  • vue页面自适应屏幕宽高_Vue+Element UI 高度实时自适应

    本文章是我一个实习两个月的练习生 在项目中遇到的问题 在此记录 防治以后再踩坑 Element ui 本身使用的Container 布局容器 组件采用 flex 布局 所以用了它的布局就可以做到宽度实时自适应 当我想试试高度是否自适应时发现
  • golang之跨语言ipc通信

    1 golang之跨语言ipc通信 文章目录 1 golang之跨语言ipc通信 1 1 unix domain Socket unix域套接字 介绍 1 2 IPC SOCKET通信 1 2 1 函数及地址定义介绍 1 2 2 UNIX
  • qt用mingw编译时报错 multiple definition of

    网上相关回答不少 但过于简单 这里做一下记录 qt用mingw编译程序时报 multiple definition of 这个错误 错误信息大概是如下图所示 首先 检查自己的程序是否真的有重定义 头文件循环包含等问题 若确定没有 则是由于方
  • 基于机器视觉的布匹疵点检测——新视智科

    人工智能验布系统 布匹的疵点检测是纺织工业中的一个十分重要的环节 当前 纺织工业的布匹缺陷检测领域 人工检测仍然是主要的质量检测方式 而近年来由于人力成本的提升 以及人工检测存在的检测速度慢 漏检率高 一致性差 人员流动率高等问题 越来越多
  • 渗透测试信息收集方法和工具分享

    文章目录 一 域名收集 1 OneForAll 2 子域名挖掘机 3 subdomainsBurte 4 ssl证书查询 二 获取真实ip 1 17CE 2 站长之家ping检测 3 如何寻找真实IP 4 纯真ip数据库工具 5 c段 旁站
  • 安装LLVM+Clang教程

    目录 前言 一 LLVM简介 二 LLVM Clang的安装 前言 最近可能要学习编译器相关的知识 因此总结一下LLVM的安装方法 以防忘记如何安装 接下来就是正式的安装过程了 分割线 一 LLVM简介 LLVM是Low Level Vir
  • 结构化思维学习与应用

    本文转自 CIO之家 结构化思维 Structured Thinking 是指一个人在面对工作任务或者难题时能从多个侧面进行思考 深刻分析导致问题出现的原因 系统制定行动方案 并采取恰当的手段使工作得以高效率开展 取得高绩效 当你这样做事的
  • 【xbin-store】基于springboot的分布式B2C电商开源项目

    原文地址 https blog csdn net g290095142 article details 79105219 致敬原作者 https github com xubinux xbin store CSDN下载地址 分享一些关于这个