用于项目中的技术点以用于届时写毕设论文
- 基于
ROLE
的接口权限控制 - 基于 JWT 的鉴权机制 (利好分布式)
- 灵活配置 CORS 白名单 (以备前后端分离)
- 基于 BCryptPasswordEncoder 的密码加密机制
这个算法很特别,每次Hash出来都是不一样的结果,但是 matches 却可以成功,可以深入了解下原理
数据流向
DTO -> Controller -> Service -> DAO -> PO -> Service -> Controller -> VO
技术:JPA
主要目的是解决在数据库和程序语言间的不匹配问题,通过使用 ORM 技术,可以使得程序员在编写代码时使用对象的形式来操作数据库,而不需要手动编写 SQL 语句。
使用 ORM 技术可以提高代码的可维护性和可读性,因为程序员不需要了解复杂的数据库操作,只需要关注与业务逻辑相关的代码。同时,ORM 还可以解决数据库的跨平台问题,因为 ORM 会根据不同的数据库系统自动生成合适的 SQL 语句。
- 定义了一个基础的 PO 类,其中包含 ID、创建时间、更新时间以及创建人ID等基础字段,并通过
@JpaAuditing
完成自动填充 - 逻辑删除与数据库唯一约束冲突问题 (delete_time)
- 基于 REST API 的接口设计风格
- 通过 Validation 保证 DTO 以及 Controller层其余入参 的合法性
- 制定统一的返回格式
Res
(包含状态码、状态信息、数据) - 通过 AOP 保证 Service 层的幂等性
- 对于所有
行为
接口,提供了 Rollback 方法
- 完善的全局异常处理机制
- 基于 Swagger 的 API 文档生成