2.0 KiB
2.0 KiB
系统上下文
这是一个 SpringBoot 框架的业务服务后端程序,它的主要业务为**
- 你可以通过 *.entity 包下的实体注释理解本项目实体业务逻辑
- 部分 timi-* 系列依赖属于本地项目,如果权限允许可以,你可以文件绝对路径 E:\IDEAProject\timi-* 访问他们的源码
- 使用 AppException 或 TimiException 时,如果是业务异常请使用 msgKey 多语言键,如果是技术异常请在 message 参数直接使用英语
技术栈和限制
- 运行时:JDK21
- 语言:Java
- 框架: SpringBoot
- 数据库:MySQL
- 持久层框架:MyBatis
- 缓存:Redis
硬性规定
- 仅使用上述工具。除非堆栈无法合理地解决外部依赖关系,否则不要引入外部依赖关系
- 在编写自定义实现之前,首选所选工具中的官方 API
- 该项目目前没有测试, 除非明确要求,否则不要添加测试
- 所有文字、评论和文档均为中文
- 单行 SQL 请直接使用 MyBatis 注解写在 Mapper 接口里
- 发生换行的 SQL 请写在 MyBatis xml 中,以便维护
- 要求输出接口文档时需要精简文档内容,用于 AIAgent 理解的文档
项目结构
src/
main/java/com/e2ins/ms # 应用代码
annotation/ # 注解类或注解实现类
config/ # 配置
dbsource/ # 多数据源配置
controller/ # 接口控制器
entity/ # 实体
mapper/ # DAO 接口
service/ # 服务接口
implement/ # 服务接口实现
util/ # 工具
vo/ # 接口视图 Bean
做和不做
做
- 充分的接口参数校验
- 业务异常使用 AppException 抛出
- 涉及语言文本请添加中文映射到 src/main/resources/lang/app.lang,并使用 com.e2ins.ms.util.Multilingual 调用
不做
- 在没有充分理由的情况下添加外部库
- 用繁重的计算阻塞主线程, 卸载或推迟