技术栈简介及创建父工程-搭建工程-Saas多租户平台开发
目录
内容
一、工程搭建
1、前置知识说明
- Saas-HRM后端代码技术栈:Spring全家桶(Springboot2.x+SpringCloud+SpringMVC+SpirngData)+Shiro+Swagger2+Mysql
- 前端技术栈:Vue全家桶+ElementUI
2、开发环境要求
- 主要软件简介
环境 | 版本 | 说明 |
---|---|---|
JDK | 1.8 | - |
Mysql | 5.7+ | 数据库 |
IDEA | 2017+ | 开发工具,可用Eclplise替换 |
Maven | 3.3.X+ | 项目构建与jar包依赖管理 |
vue.js | 2.6.10 | vue框架核心js |
@vue/cli | 4.0.5 | vue脚手架 |
vue-router | 3.0.2 | vue路由 |
vuex | 3.1.0 | vue状态管理,简单理解为数据共享仓库 |
element-ui | 2.13.2 | UI库 |
-
个人配置说明
-
数据库 Mysql 8.0.20
-
IDEA2020.1
-
Maven3.6.3
3、构建父工程
-
创建过程省略。
- 工程名’ihrm-parent’
- groupId-com.ihrm
-
pom.xml 文件配置(初期规划,后面根据需要增减),详细配置如下:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.ihrm</groupId> <artifactId>ihrm-parent</artifactId> <version>1.0.0-SNAPSHOT</version> <parent> <artifactId>spring-boot-starter-parent</artifactId> <groupId>org.springframework.boot</groupId> <version>2.3.0.RELEASE</version> <relativePath /> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <spring.boot.version>2.3.0.RELEASE</spring.boot.version> <spring.cloud.version>Hoxton.SR6</spring.cloud.version> <druid.version>1.1.22</druid.version> <mybatisplus.version>3.3.2</mybatisplus.version> <mysql.version>8.0.20</mysql.version> <mssql.version>4.0</mssql.version> <oracle.version>11.2.0.3</oracle.version> <commons.collections4.version>4.4</commons.collections4.version> <commons.fileupload.version>1.4</commons.fileupload.version> <commons.io.version>2.7</commons.io.version> <fastjson.version>1.2.70</fastjson.version> <joda.time.version>2.10.6</joda.time.version> <swagger.version>3.0.0</swagger.version> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> </dependency> <!-- mysql驱动 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!-- oracle驱动 --> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>${oracle.version}</version> </dependency> <!-- mssql驱动 --> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>sqljdbc4</artifactId> <version>${mssql.version}</version> </dependency> <!-- postgresql驱动 --> <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>${druid.version}</version> </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>${mybatisplus.version}</version> <exclusions> <exclusion> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>${fastjson.version}</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <version>${commons.collections4.version}</version> </dependency> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>${commons.fileupload.version}</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>${commons.io.version}</version> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> </dependency> <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <version>${joda.time.version}</version> </dependency> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>${swagger.version}</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>${swagger.version}</version> </dependency> </dependencies> <!-- 阿里云maven仓库 --> <repositories> <repository> <id>public</id> <name>aliyun nexus</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>public</id> <name>aliyun nexus</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </pluginRepository> </pluginRepositories> </project>
-
相关jar包说明
-
jedis:redis客户端工具
-
druid-spring-boot-starter:druid连接池
-
mybatis-plus-boot-starter:简化sql开发
-
fastjson:JSON数据转换工具
-
commons-lang3:封装了大量的java常用类的工具类
-
commons-collections4:集合工具类
-
swagger2相关:通过注解自动生成API文档
-
有关maven仓库,如在Maven配置文件中一配置,此处可省略
下一篇创建公共子模块common及相关类的
后记 :
本项目为参考某马视频开发,相关视频及配套资料可自行度娘或者联系本人。上面为自己编写的开发文档,持续更新。欢迎交流,本人QQ:806797785
前端项目源代码地址:https://gitee.com/gaogzhen/ihrm-parent // 后端项目
后端JAVA源代码地址:https://gitee.com/gaogzhen/ihrm-vue // 前端后台管理系统