技术栈
基础环境
- JDK 21:利用Java的最新特性,提升框架的运行效率和安全性。
- ^Node (推荐v20.12.2):利用 Node.js 作为前端开发环境,提供对现代JavaScript特性的支持,以及改进的性能和更强的安全性。
兼容性注意
Vite 需要 Node.js 版本 18+ 或 20+。然而,有些模板需要依赖更高的 Node 版本才能正常运行,当你的包管理器发出警告时,请注意升级你的 Node 版本。
- ^pnpm 7.x(推荐v9.0.47):新一代的包管理工具,以更快的速度和更小的存储占用优化开发流程。
核心框架
- SpringBoot 3.x: 最新的Spring Boot版本,提供更优的性能和更丰富的特性。
- Sa-Token:一个轻量级 Java 权限认证框架,简化权限认证,保障应用的安全性。
- Mybatis Flex:一个优雅的
MyBatis
增强框架,它非常轻量、同时拥有极高的性能与灵活性。 - Flyway:
数据库版本控制
工具,确保数据库迁移的可靠性。 - Knife4j:一个为
Swagger
接口文档增强的工具,提供了更直观的 API 文档展示和更便捷的接口测试体验。 - Minio:一个开源的对象存储服务,提供高性能、分布式存储解决方案,兼容 S3 API。
- HikariCP:选择
HikariCP
作为 JDBC 连接池,提供快速且高效的数据库连接管理。
前端
- Vue 3.x:采用
Vue 3
,Vue.js 的最新稳定版本,提供更强的性能和更丰富的功能,构建交云动响应式用户界面。 - Vite 5.x:使用
Vite 5
作为前端开发和构建工具,它利用现代浏览器的原生 ES 模块导入特性,提供了快速的冷启动和即时模块热更新。 - TypeScript:通过
TypeScript
的集成,引入静态类型检查,增强了代码的可维护性和可读性,提前避免潜在的错误。 - Pinia:状态管理采用
Pinia
,这是 Vue 3 的解构式状态管理库,它简单、灵活且易于使用,优化了应用的状态管理。 - Element-Plus 2.x:一个基于 Vue 3 的组件库,提供了一系列高质量的 UI 组件,帮助开发者快速构建美观、功能完备的用户界面。
其他
Jackson:选择
Jackson
作为首选的JSON处理库,以提供更稳定和高效的数据处理能力。ModelMapper:选择
ModelMapper
作为对象映射解决方案,而非 Spring 的BeanUtils
,以提供更智能和灵活的对象属性映射能力。EasyExcel:引入
EasyExcel
库,简化 Excel 文件的读写操作,使得生成报表和导入数据变得更加高效。RestClient:选择
RestClient
作为主要的 HTTP 客户端库,而非RestTemplate
,以提供更现代和更简洁的HTTP请求处理方式。