陌丿尘16 2022-06-21 09:06 采纳率: 90.2%
浏览 31
已结题

问一个关于java很浅的问题,就是关于后端开发各种层的作用

一直不太明白,就是在后端开发,比如java中,用框架开发,为什么就是需要controller层,再到service层,再到mapper层呢?什么不能直接controller层直接到mapper层呢?或者直接mapper层呢?让大家见笑了,一直没理解得了,谢谢了

  • 写回答

4条回答 默认 最新

  • 一头小山猪 一头小山猪(个人IP)官方账号 2022-06-21 09:20
    关注

    分层可以提高程序的复用性,客户端发送过来的数据和你的SQL并不产生强关系(假设你只有controller和mapper),一定会经过逻辑的处理。这其中包含数据校验,在业务逻辑上的相互调用。
    控制层的主要作用就是前后端的数据交互,或者控制跳转(非前后端分离项目中);mapper层主要负责和数据库进行交互,封装数据;而service层的作用就是实现你的业务功能逻辑,这样做之后会减少很多冗余代码。
    刚开始在学习阶段,或者业务不复杂的时候这一点几乎体现不出来,也不用做功能模块的划分,但是以后接触企业级项目自然就有体会了,包括为什么要设计接口和实现类这样的关系?也是因为一个接口会有多个业务场景,道理是一样的。
    总是,保持良好的编程思维和习惯就好,做过几个项目之后就能够理解了。
    有帮助请采纳,还有不懂的可以继续追问~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 6月29日
  • 已采纳回答 6月21日
  • 创建了问题 6月21日

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分