学习不走弯路,通过《mall视频教程(最新版)》,使用更系统、高效的方式来学习mall电商实战项目吧!
mall项目架构篇介绍
mall项目架构篇介绍
在我们平时做项目的时候,项目中使用的技术往往是最重要的,尤其是用于搭建框架的技术,因为这些技术可以复用到任何同类项目中去。下面我们就来学习下《mall学习教程》的架构篇,主要是带大家搭建一个mall项目在使用的项目脚手架
mall-tiny
,这个过程精简掉了mall项目中的电商业务,纯粹学习mall项目中使用的技术。希望大家通过架构篇的学习,能独立搭建一个通用的项目脚手架!
相关视频教程
脚手架技术栈
我们的
mall-tiny
项目脚手架采用现阶段主流Java技术栈实现,涵盖了如下技术,并且每种技术都包含独立的教程和示例代码。
脚手架整合过程
在我们把这些技术整合到
mall-tiny
脚手架中去时,我们会采用先学习需要整合的技术,然后再进行整合的方式,对这些技术不熟悉的小伙伴也不用担心。
下载源码
mall-learning
为《mall学习教程》中架构篇的示例代码,直接去Github上下载即可,下载地址:https://github.com/macrozheng/mall-learning
创建数据库
在运行项目前,我们得先导入数据库,确保安装好MySQL
,这里使用的是5.7
版本。
需要导入的SQL脚本在mall-learning
项目的document/sql
目录下,文件名称为mall_tiny.sql
。
导入成功后数据库结构如下:
导入示例代码
由于mall-learning
项目为一个聚合项目,所以在导入代码时需要整个导入,不能单独导入某个示例。
使用IDEA,直接选择项目的根目录进行导入。
项目结构
- 导入成功后项目结构如下:
- 然后设置下项目的JDK版本,这里使用
Java 8
版本;
- 由于
mall-learning
示例代码项目采用了父工程统一管理依赖版本的方式,我们在根目录的pom.xml
中定义好了所有示例使用的依赖版本;
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<skipTests>true</skipTests>
<docker.host>http://192.168.3.105:2375</docker.host>
<docker.maven.plugin.version>0.40.2</docker.maven.plugin.version>
<pagehelper-starter.version>1.4.5</pagehelper-starter.version>
<pagehelper.version>5.3.2</pagehelper.version>
<druid.version>1.2.14</druid.version>
<hutool.version>5.8.9</hutool.version>
<springfox-swagger.version>3.0.0</springfox-swagger.version>
<swagger-models.version>1.6.0</swagger-models.version>
<swagger-annotations.version>1.6.0</swagger-annotations.version>
<mybatis-generator.version>1.4.1</mybatis-generator.version>
<mybatis.version>3.5.10</mybatis.version>
<mybatis-starter.version>2.2.2</mybatis-starter.version>
<mysql-connector.version>8.0.29</mysql-connector.version>
<spring-data-commons.version>2.7.5</spring-data-commons.version>
<jjwt.version>0.9.1</jjwt.version>
<aliyun-oss.version>2.5.0</aliyun-oss.version>
<logstash-logback.version>7.2</logstash-logback.version>
<minio.version>8.4.5</minio.version>
<jaxb-api.version>2.3.1</jaxb-api.version>
</properties>
- 然后在各个子模块的
pom.xml
中只需继承父项目;
<parent>
<groupId>com.macro.mall</groupId>
<artifactId>mall-learning</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
- 然后在子模块中只需直接引用父项目中的依赖版本即可,这一点大家需要注意下。
<!--MyBatis分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>${pagehelper-starter.version}</version>
</dependency>