mall4j-bbc项目的搭建.md 4.6 KB

mall4j-bbc:j代表java,java项目,这里面包含了小程序/uniapp/pc/后台vue连接需要的接口。

以下开发环境均为window的开发环境。

1.开发环境

以下版本是最低要求的!!! 提问问题前请注意开发环境!!请安装好对应的依赖。

工具 版本
jdk 1.8
mysql 5.7+
redis 3.2+
ElasticSearch 7.9+
xxl-job 2.3.0

2.启动java

2.1 安装jdk + mysql + redis + maven + git + elasticSearch

如果不了解怎么安装jdk的,可以参考 菜鸟教程的java相关

如果不了解怎么安装mysql的,可以参考 菜鸟教程的mysql相关

如果不了解怎么安装maven的,可以参考 菜鸟教程的maven相关

如果对于redis的安装并不了解的,可以参考 菜鸟教程的redis相关

如果对于git的安装并不了解的,可以参考 菜鸟教程的git相关

如果对于elasticSearch的安装并不了解的,可以参考 ElasticSearch 安装

安装相对简单,网上也有很多教程,这里就不多讲述。安装完按需对redis进行配置,后启动redis服务即可。

使用git下载项目,账号需要问项目的采购人员。

git clone http://git.mall4j.com/yami/mall4j-bbc.git

后台配置的端口需与redis服务端口保持一致。

2.2 导入数据库

2.2.1 导入数据库之前,先要修改数据库配置

修改配置文件my.cnf

[mysqld]
# 默认使用“mysql_native_password”插件认证
# 如果使用的是mysql 8.0 需要设置 mysql_native_password,5.7并不需要
# default_authentication_plugin=mysql_native_password
# 关闭 only_full_group_by
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

修改完毕之后,重启mysql服务。

使用idea导入项目并启动

启动idea,右上角选择open,找到mall4j的文件夹

idea open

2.2.2 导入数据库

在项目中会有一个 db 文件夹 如图所示:

db文件夹

里面会有很多的数据库文件,按照0、1、2、3的顺序将0schema.sql1yami_bbc.sql2area.sql3xxl_job.sql 导入mysql中。

这边推荐使用一款名为 sqlyog的工具,使用navicat 有不可预知的后果(因为有客户反应从navicat导出的数据库,再从navicat无法导入...)

问:那其他的数据库文件是干嘛的?

答:是更新过了某个时间更新代码时,更新的sql补丁,总数据都在上面三个文件中,所以初始化的时候,只要将三个文件按顺序导入数据库即可。

2.2.3

修改各个端的application-dev.yml (对于无法找到文件的用户,推荐使用idea快捷键 ctrl + shift + n 进行文件搜索)更改数据库账号密码

2.2.4 xxl-job

我们目前使用的定时任务框架为 xxl-job

下载地址:

下载后使用idea打开,修改,xxl-job运行的端口、二级目录、数据库连接配置(连接xxl-job的数据库,3xxl_job.sql已经导入),修改platfrom端的application-dev.yml

idea open

idea open

2.3 安装Lombok插件

Lombok是一个在Java开发过程中为了简化冗余和样板式代码而出现的插件如getter setter。项目中使用了这个插件,您需要安装该插件以便于项目正常启动。

具体安装步骤可以参考:IntelliJ IDEA下的使用 Lombok

2.4 修改配置,启动项目

对于无法找到文件的用户,推荐使用idea快捷键 ctrl + shift + n 进行文件搜索

  • 启动redis,端口6379
  • 启动mysql
  • 启动xxl-job-admin 定时任务
  • 启动ElasticSearch
  • 通过MultishopApplication启动项目商家端后台接口,ApiApplication 启动项目前端接口,PlatformApplication 启动项目平台端前端接口,ImApplication 启动项目客服消息前端接口

关于跨域

关于跨域,目前已经在java后台实现了跨域的配置,修改CorsConfig 将里面*的域名改为自己需要的域名即可。