common 通用工具模块

基础通用功能的工具类模块,涵盖广泛,满足各种工具操作。

├─common
│  ├─bin        可执行目录、打包模块
│  ├─src        工程源文件代码目录
│  │  ├─main
│  │  │  ├─java
│  │  │  │  └─com
│  │  │  │      └─deertech
│  │  │  │          └─common
│  │  │  │              ├─callback      方法回调相关接口
│  │  │  │              ├─codec         解码编码工具
│  │  │  │              ├─collect       集合工具
│  │  │  │              ├─exec          命令行执行工具
│  │  │  │              ├─idgen         ID生成工具
│  │  │  │              ├─image         图片处理工具
│  │  │  │              ├─io            文件处理工具
│  │  │  │              ├─lang          字符串等基础数据类型处理工具
│  │  │  │              ├─mapper        JSON、XML等处理工具
│  │  │  │              ├─media         视频音频处理
│  │  │  │              ├─msg           邮件短信工具
│  │  │  │              ├─network       IP、Mac工具
│  │  │  │              ├─reflect       反射工具、类扫描工具
│  │  │  │              ├─text          文本处理、拼音、差异比较工具
│  │  │  │              ├─ueditor       富文本编辑器
│  │  │  │              ├─utils
│  │  │  │              │  ├─excel      Excel导入导出工具
│  │  │  │              │  └─word       Word导出工具
│  │  │  │              └─web
│  │  │  │                  └─http      HTTP、Servlet相关工具
│  │  │  └─resources
│  │  │      └─static                   静态文件资源
│  │  │          ├─adminlte             AdminLTE UI
│  │  │          ├─bootstrap            BootStrap 核心
│  │  │          ├─bootstrap-plugins    Bootstrap 插件
│  │  │          ├─common               通用js工具
│  │  │          ├─fonts                字体图标
│  │  │          ├─icheck               复选框单选框美化
│  │  │          ├─jquery               jQuery 核心
│  │  │          ├─jquery-plugins       jQuery 插件
│  │  │          ├─jquery-ztree         zTree 树结构插件
│  │  │          ├─laydate              日期选择插件
│  │  │          ├─layer                弹窗对话框插件
│  │  │          └─select2              下拉框美化
│  │  └─test    单元测试目录
│  └─target     编译结果目录

modules 功能模块目录

所有功能模块将放到该目录下如:核心模块、内容管理、业务流程、文件管理等等。

├─modules

core 核心功能模块

├─modules
│  ├─core
│  │  ├─bin             可执行目录、模块打包
│  │  ├─db              数据库模型设计目录
│  │  ├─src             模块源文件代码目录
│  │  │  ├─main
│  │  │  │  ├─java
│  │  │  │  │  └─com
│  │  │  │  │      └─deertech
│  │  │  │  │          ├─autoconfigure  模块SpringBoot自动配置包
│  │  │  │  │          ├─common
│  │  │  │  │          │  ├─shiro
│  │  │  │  │          │  │  ├─filter   Shiro安全过滤器类
│  │  │  │  │          │  │  └─realm    Shiro安全身份认证类
│  │  │  │  │          │  └─utils
│  │  │  │  │          │      └─excel
│  │  │  │  │          │          └─fieldtype   核心模块定义的Excel导入导出类型
│  │  │  │  │          └─modules
│  │  │  │  │              ├─config
│  │  │  │  │              │  └─web
│  │  │  │  │              │      └─interceptor SpringMVC拦截器、日志拦截等
│  │  │  │  │              ├─msg                消息模块内部消息
│  │  │  │  │              └─sys                核心功能包
│  │  │  │  │                  ├─dao            持久层相关类
│  │  │  │  │                  ├─db             数据库初始化配置类
│  │  │  │  │                  ├─entity         实体类
│  │  │  │  │                  ├─interceptor    接口相关
│  │  │  │  │                  ├─service        业务服务类及接口
│  │  │  │  │                  │  └─support     业务实现支撑类
│  │  │  │  │                  ├─utils          核心模块工具包
│  │  │  │  │                  └─web            核心模块控制器包
│  │  │  │  └─resources
│  │  │  │      ├─config                核心功能配置文件
│  │  │  │      ├─db
│  │  │  │      │  ├─create             核心功能数据库初始化SQL脚本
│  │  │  │      │  └─upgrade
│  │  │  │      │      └─core           核心功能的数据库升级SQL脚本
│  │  │  │      ├─i18n 
│  │  │  │      │  └─core               国际化核心功能语言包
│  │  │  │      ├─mappings
│  │  │  │      │  └─modules
│  │  │  │      │      ├─msg            消息模块复杂SQL定义
│  │  │  │      │      └─sys            核心功能复杂SQL定义
│  │  │  │      ├─mybatis               MyBatis框架个性化配置文件
│  │  │  │      ├─static
│  │  │  │      │  ├─common             通用静态资源目录
│  │  │  │      │  │  └─i18n            通用静态资源国际化语言包
│  │  │  │      │  ├─echarts            Echarts图表
│  │  │  │      │  ├─fullcalendar       日历组件
│  │  │  │      │  ├─images             通用图片资源
│  │  │  │      │  ├─jqGrid             DataGrid表格组件
│  │  │  │      │  ├─jquery-plugins     jQuery的一些插件
│  │  │  │      │  ├─jquery-timeago     时间流逝组件
│  │  │  │      │  ├─jquery-validation  表单验证组件
│  │  │  │      │  ├─modules
│  │  │  │      │  │  └─sys             核心功能js文件
│  │  │  │      │  ├─ueditor            富文本插件
│  │  │  │      │  └─webuploader        文件上传插件
│  │  │  │      ├─templates
│  │  │  │      │  └─modules
│  │  │  │      │      └─gen                代码生成模板
│  │  │  │      │          ├─crud           增删改查模板
│  │  │  │      │          ├─crud_cloud     Cloud版的增删改查模板
│  │  │  │      │          ├─module         新增Maven模块的生成模板
│  │  │  │      │          ├─module_cloud   Cloud版的新增Maven模块模板
│  │  │  │      │          └─query          仅查询功能的代码生成模板
│  │  │  │      └─views
│  │  │  │          ├─error             错误页面视图
│  │  │  │          ├─include           通用的视图片段
│  │  │  │          │  └─sysIndex       主框架页的视图片段
│  │  │  │          ├─layouts           页面布局框架文件
│  │  │  │          ├─modules
│  │  │  │          │  ├─msg            内置消息视图
│  │  │  │          │  └─sys            核心功能视图
│  │  │  │          └─themes            个性化主题定义视图
│  │  │  │              └─default       默认主题目录
│  │  │  │                  ├─include   默认主题的视图片段
│  │  │  │                  └─modules   默认主题的模块视图
│  │  │  └─test     单元测试目录
│  │  └─target      编译结果目录

template 通用工程模板

最初定义是为了方便客户新建模块,直接复制一份,修改下文件名和模块名即可。

│  └─template
│      ├─.settings
│      ├─bin             可执行目录、模块打包
│      ├─db              数据库模型设计目录
│      ├─src             模块源文件代码目录
│      │  └─main
│      │      ├─java                    源码类目录
│      │      └─resources
│      │          ├─config              模块独立的配置文件
│      │          ├─db
│      │          │  ├─create           模块数据库初始化脚本
│      │          │  └─upgrade          模块数据库更新升级脚本
│      │          └─static
│      │              └─modules
│      │                  └─template    模块独立的静态资源
│      └─target         编译结果目录

parent 父级 pom.xml

所有 Maven 最上级的 pom.xml 定义,包含第三方依赖的版本号属性定义、插件定义等。

├─parent
│  └─bin    可执行目录、打包模块

root 顶级 pom.xml

所有模块间的引用,IDEA 导入的 root pom.xml 功能,统一打包的工程

├─root
│  └─bin    可执行目录、打包全部工程

web 服务启动工程

系统的入口,模块的引用、参数配置、启动 Web 服务的工程

└─web
    ├─bin           可执行目录、打包全部工程
    │  └─docker     Docker 容器部署工具
    ├─db            数据库模型设计目录
    ├─src           源代码目录
    │  ├─main
    │  │  ├─java
    │  │  │  └─com
    │  │  │      └─deertech
    │  │  │          └─modules
    │  │  │              └─test             代码生成功能示例
    │  │  │                  ├─dao          持久层
    │  │  │                  ├─db           Test示例功能数据库初始化配置类
    │  │  │                  ├─entity       实体Bean
    │  │  │                  ├─service      业务逻辑层
    │  │  │                  └─web          视图控制器
    │  │  ├─resources
    │  │  │  ├─config               系统配置文件
    │  │  │  ├─db
    │  │  │  │  └─create            Test示例功能数据初始化脚本
    │  │  │  ├─mappings
    │  │  │  │  └─modules
    │  │  │  │      └─test          Test示例功能复杂SQL定义
    │  │  │  ├─static
    │  │  │  │  └─common            通用静态css/js引用文件
    │  │  │  └─views
    │  │  │      └─modules
    │  │  │          ├─demo         一些组件演示示例
    │  │  │          └─test         Test示例功能视图
    │  │  └─webapp
    │  │      ├─userfiles           文件上传默认目录,可更改其它目录或其他OSS存储
    │  │      │  ├─avatar           用户上传的头像
    │  │      │  ├─fileupload       文件上传组件上传的文件
    │  │      │  └─system           富文本用户上传目录
    │  │      └─WEB-INF
    │  │          ├─classes         类及资源编译目录
    │  │          └─ureportfiles    报表文件目录
    │  └─test   单元测试工具
    └─target    工程编译结果目录

Vue 分离端

├── build                打包脚本相关
│   ├── config           配置文件
│   ├── generate         样式生成器
│   ├── script           编译脚本
│   └── vite             vite配置
├── mock                 mock文件夹
├── public               公共静态资源目录
├── src                  源码主目录
│   ├── api              数据接口文件
│   ├── assets           资源文件
│   │   ├── icons        图标文件夹
│   │   ├── images       图片的文件夹
│   │   └── svg          svg图片的文件夹
│   ├── components       公共组件
│   ├── design           样式文件
│   ├── directives       指令
│   ├── enums            枚举/常量
│   ├── hooks            hook
│   │   ├── component    组件相关hook
│   │   ├── core         基础核心hook
│   │   ├── event        事件相关hook
│   │   ├── setting      配置相关hook
│   │   └── web          web相关hook
│   ├── layouts          布局文件
│   │   ├── default      默认布局
│   │   ├── iframe       iframe布局
│   │   └── page         页面布局
│   ├── locales          多语言
│   ├── logics           逻辑
│   ├── App.vue          主页面
│   ├── main.ts          主入口
│   ├── router           路由配置
│   ├── settings                   项目配置
│   │   ├── componentSetting.ts    组件配置
│   │   ├── designSetting.ts       样式配置
│   │   ├── encryptionSetting.ts   加密配置
│   │   ├── localeSetting.ts       多语言配置
│   │   ├── projectSetting.ts      项目配置
│   │   └── siteSetting.ts         站点配置
│   ├── store             本地存储
│   ├── utils             工具类
│   └── views             视图页面
│       ├── bpm           工作流模块
│       ├── sys           系统核心模块
│       └── test          测试功能模块
├── test                  测试
│   └── server            测试用到的服务
│       ├── api           测试服务器
│       ├── upload        测试上传服务器
│       └── websocket     测试ws服务器
├── types                 类型文件
├── .env                  全局属性配置
├── .env.development      开发环境属性配置
├── .env.production       开发环境属性配置
├── package.json          项目信息和依赖配置
├── vite.config.ts        vite配置文件
└── windi.config.ts       windcss配置文件