V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Newyorkcity
V2EX  ›  问与答

JavaEE 开发中通常都会有 @Controller @Service @Repository 三层,较真地说, SpringMVC 中的 C 到底是其中的 @Controller 层还是三层合一?

  •  
  •   Newyorkcity · 2020-08-15 22:06:29 +08:00 · 962 次点击
    这是一个创建于 1342 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我个人的理解是 C 是在 MVC 中的概念是一个使视图与模型分离的,控制数据流向模型对象,并在数据变化时更新视图的东西,因此三层合一才能对应 MVC 中的 C,这种分为三层的开发方式只是 C 的一种开发范式。。不知道我这个理解对不对,谢谢。
    4 条回复    2020-08-16 12:07:29 +08:00
    yeqizhang
        1
    yeqizhang  
       2020-08-15 22:19:03 +08:00 via Android   ❤️ 1
    service 是 M 和 C 桥梁吧,感觉也是 C 一部分,为了软件分层解耦、复用代码以及方便做声明事务控制。
    nvkou
        2
    nvkou  
       2020-08-16 02:27:44 +08:00 via Android   ❤️ 1
    同困惑。通常 model 没啥异议,然后 view 就是 JSP 或者没有,service 和 controller 有点重合,毕竟如果是 restfull 。模型才是重点,controller 都是代码模板而已。
    更加困惑的还有 DAO, DTO
    waising
        3
    waising  
       2020-08-16 09:57:00 +08:00 via iPhone
    微服务的话 我们是把 service 层去掉了 单应用话 保留了 service
    EminemW
        4
    EminemW  
       2020-08-16 12:07:29 +08:00
    @waising #3 不是 Controller?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5269 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 03:42 · PVG 11:42 · LAX 20:42 · JFK 23:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.