
本项目采用MVC架构模型，采用前后端分离模式开发
${project}：项目名称

    技术栈说明
    ${project}-permission：
        node实现的中间件，用于请求到达后端（如JAVA、PHP）之前进行的操作比如权限认证
        之所以不用JAVA或php实现权限认证或者中间件这一部分是因为他们实现权限认证都比较重。

    ${project}-server:
       MVC框架：sprintBoot2
       数据库操作：Mybatis-plus
       数据库：Mysql
       项目依赖管理：Maven

    ${project}-view / ui
        前端框架：VUE
        前端ui框架：element-ui
        请求库：axios
        路由库：vue-router
        全局状态库：vuex
    

${project}-permission：
    business: M 层 内部封装了数据表的操作
    config：项目配置文件
    controllers：C 层 处理用户请求，输入输出操作
    lib：封装的一些工具函数
    middleware：中间件 请求到达 C 层之前 做的一些操作 如权限认证
    node_modules：项目依赖库
    proxy：封装的一些工具类
    test：测试文件可删除
    upload：静态文件
    app.js 项目入口文件
    routes_mount.js 路由挂载文件
    staticRouter.js 静态文件路由挂载

${project}-server:
    src：源码目录
        main/java/com/work/project
            bean：实体类其文件名对应数据表名 描述数据表的类
            config：项目配置文件
            controller：C层处理用户请求，输入输出操作
            mapper：Mybatis的dao层映射文件，可以简单理解为dao层
            response：存放统一响应格式的一些类
            service：M层 内部封装了些数据库的操作
            MainApp.java：项目入口文件
        main/resource：静态资源 里面有个application.yml 是项目的配置文件
    target：存放项目打包后的文件
    pom.xml：mavan配置文件依赖配置

${project}-view / ui
    config：项目配置文件
    node_modules：项目依赖库
    src：源码目录
        components：公共组件
        filters：vue 公共过滤器
        images：静态图片
        mixins：公共函数
        public：静态资源
        router：路由映射文件
        store：vuex的store文件
        style：css样式文件
        utils：工具函数
        view：视图文件与router联合 形成路由映射
        App.vue：视图入口
        main.js：项目入口文件


