技术栈简介及创建父工程-搭建工程-Saas多租户平台开发

技术栈简介及创建父工程-搭建工程-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     // 前端后台管理系统

猜你喜欢

转载自blog.csdn.net/gaogzhen/article/details/109587192