目前各类公司开始采用前后端分离模式开发
这种开发模式的好处:分工明确,职责分明,可以提供更好的系统使用体验。
后端追求的是:三高(高并发,高可用,高性能),安全,存储,业务等等。
前端追求的是:页面表现,速度流畅,兼容性,用户体验等等。
通过将整个开发团队分成前后端,让两边的工程师更加专注各自的领域,独立治理,然后构建出一个全栈式的精益求精的开发队伍
上面的介绍只是说明下本整合框架支持前后端分离。
这里我主要记录下后端的架构搭建————》
这里的整合开发框架 是基于SpringBoot整合其它模块而成的,那么每个模块选择的技术如下:
- SpringBoot版本选择目前较新的2.0.5.RELEASE版本
- 持久化框架选择 Mybatis
- 页面模板引擎选择 thymeleaf
- 前台框架选择 Bootstrap/Vue
- 后台框架选择 AdminLTE
- 数据库选择 Mysql
- 数据库版本管理选择 Flyway
- 前后端接口调用方式 RESTful
- 数据格式 JSON
- 前端事件请求 AJAX
- 页面的事件控制与样式处理 JQuery
代码分包(工程目录基础结构)
首先确定本整合框架名为springboot-backendframe
基础包名为:com.company.frame
主要分成3个模块,即用户管理及权限相关模块、具体业务相关模块和公共模块。为此这3个模块分别所属的包为auth、biz和common,即:
com.company.frame.auth
com.company.frame.biz
com.company.frame.common
然后每个模块下都是有本模块的controller、service、dao和domain,所以本工程包的结构如下:
根据前面所确定的技术,我们首先从整合springboot ,mybatis开始:
那么工程的pom文件内容如下
<?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.cheri</groupId>
<artifactId>spring-boot-ajax</artifactId>
<version>1.0-SNAPSHOT</version>
<!--第一步 配置父依赖版本-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.5.RELEASE</version>
</parent>
<!--第二步 配置默认属性 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version&g