ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
* [ ] 项目层级分工: 整个项目中每个层级必须有明确的分工: * 接口层Controller层只负责与前端交互并对业务层的方法进行拼装; * 业务层Service与ServiceImpl层负责编写业务逻辑,若业务逻辑较为复杂且庞大,需要将其拆分到多个Service中进行实现,并统一由一个接口Controller与前端交互,该Controller必须为业务的主体; * 数据库持久层Dao层只负责与数据库进行交互; * 当业务层之间的数据传递需求或者前端需要的数据类型无数据库表与之对应时(Entity满足不了),使用ViewModel作为容器; * [ ] Java文件组织规范:容器; 避免单个文件的代码量超出2000行,尽可能控制在1000以内 * [ ] 避免脏数据造成的bug: * [ ] 禁止魔法值的使用: 所谓魔法值,是指在代码中直接出现的数值,只有在这个数值记述的那部分代码中才能明确了解其含义。(例如: **int [] array = new int[20];** 其中20就是魔法值)魔法数值使代码的可读性大大下降,也增加了开发者之间交流的成本,因此若非必须的情况,例如从前端传递的JSON中取值( **String userName = jsonObject.getString("userName");** ),禁止使用魔法值。 * [ ] Date数据类型在实体中添加@DateTimeFormat注解,并且注解需要明确Date格式(如:yyyy-MM-dd),该注解能将前端String格式的数据转化为Java Date格式。