微信微网站统计,怎么做类似淘宝一样的网站吗,sql2008做查询网站,设计师分六个级别背景
之前写一个接口的时候没有察觉到将RequestBody这个注解带到service层了。 今天提交代码的时候#xff0c;插件没有检测到这个低级错误#xff0c;导致试飞构建连maven编译都过不了#xff0c;maven找不到程序包org.springframework.web.bind.annotation这个包
结果…背景
之前写一个接口的时候没有察觉到将RequestBody这个注解带到service层了。 今天提交代码的时候插件没有检测到这个低级错误导致试飞构建连maven编译都过不了maven找不到程序包org.springframework.web.bind.annotation这个包
结果
试飞构建不成功
背后原因
如果将RequestBody写在 Service层会出现的问题
编译错误 Service 层通常是业务逻辑层它不直接处理 HTTP 请求。RequestBody是 Spring MVC 用于处理 HTTP 请求的注解它依赖于 Spring MVC 的请求处理机制。如果在 Service 层使用RequestBody会导致编译错误因为 Service 层没有相应的请求处理上下文来解析这个注解。逻辑混乱 从设计模式和分层架构的角度来看这违背了职责分离原则。控制器层应该负责接收和解析 HTTP 请求将请求数据转换为业务逻辑层Service 层可以理解的对象形式然后将这些对象传递给 Service 层进行业务处理。如果在 Service 层处理请求体的绑定会使 Service 层与 HTTP 请求细节耦合导致代码难以维护和测试。例如在单元测试 Service 层时不应该涉及 HTTP 请求相关的内容而RequestBody的存在会引入这些不相关的因素。无法正常工作 即使通过一些不合理的方式如在不适当的上下文中强制加载 Spring MVC 相关的组件让代码能够编译通过RequestBody在 Service 层也无法正确地获取和解析 HTTP 请求体中的数据因为它不在请求处理的流程中。它缺少 Spring MVC 的DispatcherServlet等组件对请求的分发和处理环境。
结语
希望uu们不会和我一样犯这种低级错误(●´ω●)ゞ