学习开源项目NewBeeMall新蜂商城(1) - 初步了解与运行NewBeeMall

0.前言

之前想尝试学习开源项目Halo个人博客系统,但是目前知识积累得太浅薄,halo项目相对我来说还太庞大,所以就暂时搁置了,打算先学习完NewBeeMall商城项目之后继续看Halo个人博客系统。
学习开源项目Halo(1) - 初步了解与运行Halo

NewBeeMall相对来说简单一些,适合当作springboot的一个综合实践。(大型课程设计?)

学习开源项目的目的:想通过学习与了解一个优秀的项目来对自己知识查漏补缺,并学习如何构建一个优质的项目,如果文章内容有所问题,欢迎在评论区批评指正。

1.NewBeeMall 新蜂商城简介

  • NewBeeMall 新蜂商城 GitHub地址 https://github.com/newbee-ltd/newbee-mall
  • 项目作者对NewBeeMall 新蜂商城的介绍:newbee-mall 项目(新蜂商城)是一套电商系统,包括 newbee-mall 商城系统及 newbee-mall-admin 商城后台管理系统,基于 Spring Boot 2.X 及相关技术栈开发。 前台商城系统包含首页门户、商品分类、新品上线、首页轮播、商品推荐、商品搜索、商品展示、购物车、订单结算、订单流程、个人订单管理、会员中心、帮助中心等模块。 后台管理系统包含数据面板、轮播图管理、商品管理、订单管理、会员管理、分类管理、设置等模块。

2.NewBeeMall项目配置与运行

NewBeeMall还是很适合新手的,项目不需要配置什么中间件等等,只需配置MySQL和图片资源,即下图中的两资源文件:sql文件和图片资源。
newbeemall配置

2.1 配置MySQL数据库

找到项目中的sql文件:newbee-mall / src / main / resources / newbee_mall_schema.sql
我是使用的navicat工具,新建一个数据库newbemall后右键此数据库执行此sql文件即可,结果如下:
newbeemall
可看到有9张表,由上至下分别为:

  • 管理员用户表
  • 轮播图表
  • 商品分类表
  • 商品信息表
  • 首页配置表
  • 订单表
  • 订单子项表
  • 购物车表
  • 商城用户表

2.2 配置图片资源

查看config包下的NeeBeeMallWebMvcConfig类代码
其中有:

    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/upload/**").addResourceLocations("file:" + Constants.FILE_UPLOAD_DIC);
        registry.addResourceHandler("/goods-img/**").addResourceLocations("file:" + Constants.FILE_UPLOAD_DIC);
    }

查看FILE_UPLOAD_DIC常量配置,在common包下的Constants类
可看到

public class Constants {
    //public final static String FILE_UPLOAD_DIC = "/opt/image/upload/";//上传文件的默认url前缀,根据部署设置自行修改
    public final static String FILE_UPLOAD_DIC = "D:\\upload\\";//上传文件的默认url前缀,根据部署设置自行修改

......
    }

开源作者还贴心的留了注释在这。
因此,若只是在本机运行将upload.zip解压到D盘即可。当然也可自行更改,部署时也要注意修改。

2.3 运行NewBeeMAll

原项目的端口我修改成了8080:
商城系统运行效果如下:
newbeemall运行1
newbeemall运行2
后台管理系统运行效果如下:
newbeemall后台管理系统运行

3.NewBeeMall相关技术栈

3.1 项目原版技术栈

前端:

  • AdminLTE:基于Bootstrap 4和3的免费管理仪表板模板
  • Alipay-WeChat-HTML:支付宝和微信的二维码支付页面
  • sweetalert:一个web组件,JavaScript的“警报”的漂亮替代品
  • jqGrid:jQuery网格插件

后端:

  • Thymeleaf:前端模板引擎
  • SpringBoot2.x:web后端开发框架
  • MyBatis:持久层框架
  • MySQL:数据库:
  • kaptcha:可高度配置的实用验证码生成工具

3.2 自行拓展的小方面

在此基础上自己也加了之前学过的两个小部分:

  • 在线API文档生成:swagger
    在线API
    在线API
  • 混合加密:AES,DES,RSA,SHA,3DES,MD5(原本只有MD5)
    在这里插入图片描述

4.NewBeeMall开源项目泛读总结

发现商城用户只能设置一个收货地址,显然不是很现实,之后详细阅读代码后想自己添加上去。
…emmmm 泛读就想着改人家代码了,先好好学习下项目代码,之后会出详细阅读总结。
最后,感谢大佬的开源项目。他的GitHub首页还有其他开源项目,感兴趣可以自行查看。

发布了67 篇原创文章 · 获赞 32 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_42391904/article/details/103045466