器)三个英文单词首字母的缩写,通过这三层架构能够将数据和视图解耦,Spring
MVC 是基于 spring 的子框架,因此组件之间具备松耦合的特性可以方便替换,
比其他 MVC 框架更具备可定制性以及拓展性。
Mybatis 是一个数据库持久化框架,相比于 Hibernate 框架,Mybatis 是介
于原生 JDBC 和 ORM 框架之间,相比于 JDBC,框架底层屏蔽了大量繁琐重复的连
接配置和数据映射工作,又比 ORM 框架提供更灵活的 SQL 开发,能更好的应对复
杂的业务开发。
(2)Spring boot
Spring boot 主要用来简化 Spring 开发框架的开发、配置、调试、部署工作,
同时在项目内 集成了大量易于使用且实用的基础框架[2]。spring 体系的程序开
发,需要面对各种组件的依赖冲突以及版本适配,为了整合各个框架需要配置很
多繁琐重复的 xml 或者 javaConfig。Spring boot 产生就是为了解决这些令人诟
病的通病,通过一系列定制注解和配置文件来简化项目配置的工作量,能够自动
配置化项目达到开箱能用的效果。Spring boot 遵循着约定大于配置的开发原则,
能够进一步的简化开发工作量,spring boot 的使用的组件版本都是经过稳定性
测试的,能够保证项目能够稳定运行降低出错的概率。
(3) nginx
Nginx 是一个高性能的 http 服务器,通过 nginx 能够实现反向代理功能,反
向代理是指由代理服务器来接收来自互联网的访问请求, 再把访问请求转发到
内网对应的网站服务器[3]。通过 Nginx 可以将用户请求分流到后台不同的程序
里面,屏蔽了后端复杂的程序配置,可以通过域名配置将不同的程序挂载到同一
主域名下,解决不同 web 程序的跨域问题。
(4)layui
Layui 是一套采用自身模块规范编写的前端 UI 框架[4],从核心代码到 API
的 每 一 处 细 节 都 经 过 精 心 雕 琢 , 非 常 适 合 界 面 的 快 速 开 发 。 遵 循 原 生
HTML/CSS/JS 的书写与组织形式,门槛极低,拿来即用。其外在极简,却又不失
饱满的内在,体积轻盈,组件丰盈。
(4)Shiro
Shiro 是一个开源面向企业级开发的安全权限框架,一个功能强大能容易使
用的安全框架,需要有身份认证、授权、数据加密和会话管理等功能 [5][6]。
相比 spring security 的大而全,Shiro 更加简单容易上手,有着更加便于理解的
API。Shiro 的 API 屏蔽了许多权限认证细节,用户只需要实现相应的实现类就
可以权限认证功能,无需背后复杂的鉴权授权逻辑。通过 Shiro 能实现基于 URL
的权限控制,也能实现基于权限通配符资源权限控制,Shiro 基于 AOP 实现了注