# miku-framework 私有开发框架,基于springboot3.0 ### 项目结构 ```markdown miku-framework目录结构 └─main ├─java │ └─com │ └─mikufufu │ ├─common # 全局共享层(跨模块复用) │ │ ├─annotation # 自定义注解(如@Log、@Permission) │ │ ├─constant # 全局常量(错误码/正则表达式/通用配置项) │ │ ├─enums # 通用枚举(业务状态/类型标记) │ │ └─exception # 全局异常类(如参数校验异常) │ │ │ ├─config # 应用配置类(如Swagger/线程池配置) │ │ │ ├─core # 核心技术组件(与业务解耦) │ │ ├─cache # 缓存抽象层(Redis/Memcached操作封装) │ │ ├─serializer # 序列化协议(JSON/ProtoBuf自定义逻辑) │ │ └─utils # 核心工具类(加解密/反射工具等) │ │ │ ├─modules # 业务模块(按功能垂直拆分) │ │ │ │ │ ├─api # 对外接口模块 │ │ │ ├─controller # 聚合API入口(如第三方回调接口) │ │ │ └─model │ │ │ └─vo # API专用视图对象(避免污染内部模型) │ │ │ │ │ ├─auth # 认证授权模块 │ │ │ ├─controller # 登录/登出/令牌管理接口 │ │ │ ├─model │ │ │ │ ├─dto # 认证传输对象(如LoginDTO) │ │ │ │ └─entity # 认证实体(如UserToken表映射) │ │ │ ├─security # 安全子模块 │ │ │ │ ├─filter # 安全过滤器(如JWT校验) │ │ │ │ └─handler # 认证处理器(如登录成功返回处理) │ │ │ ├─service # 认证服务接口 │ │ │ │ └─impl # 接口实现(如JWT认证服务) │ │ │ └─utils # 模块专用工具(如Token生成器) │ │ │ │ │ ├─storage # 文件存储模块 │ │ │ ├─controller # 文件上传/下载接口 │ │ │ ├─enums # 存储枚举(如文件类型FileType) │ │ │ ├─model │ │ │ │ └─entity # 存储实体(如FileMetadata表映射) │ │ │ ├─service # 存储服务接口 │ │ │ │ └─impl # 实现类(如OSS/Local存储实现) │ │ │ └─strategy # 存储策略模式 │ │ │ └─mode │ │ │ └─impl # 策略实现(如分片上传策略) │ │ │ │ │ └─system # 系统管理模块 │ │ ├─controller # 用户/角色/权限管理接口 │ │ ├─exception # 模块专属异常(如UserNotFoundException) │ │ ├─model │ │ │ ├─entity # 系统实体(如User表映射) │ │ │ └─vo # 视图对象(如UserVO) │ │ └─service # 系统服务接口 │ │ └─impl # 实现类(如UserServiceImpl) │ │ │ ├─mapper # MyBatis数据访问接口(统一管理) │ │ │ ├─task # 定时任务调度(如XXL-JOB处理器) │ │ │ └─utils # 自定义工具类 │ └─resources ├─mapper # MyBatis XML文件 │ └─static # 静态资源 └─css # CSS样式文件 ``` ### 部署方式 执行下列命令 ``` mvn package -P prod ``` 在打包好的jar文件所在的文件夹下新建config文件夹 将代码中的`application.yml`和`application-prod.yml`复制到config文件夹中即可,如需修改只需要修改prod文件即可 执行下列命令运行: ``` jar -jar [jar包名].jar ``` Ps:修改yml文件后需要重启才可生效