您的位置:首页 > 运维架构 > 网站架构

对MVC、三层架构的一点愚见

2017-06-10 17:18 281 查看
网上对这个问题争论很多,有的说V和C对应表现层,M对应业务层和数据访问层,有的又说MVC整个对应表现层,其实这个问题关键在于对模型层的理解。

    若认为模型层包括实体类和业务逻辑,那M自然对应业务层和数据访问层(需要的话);

    若认为模型层只包括实体类,不包含业务逻辑,那MVC就对应整个表现层。 

    我更趋向于第二种观点,模型只是数据的一种表现方式,如JavaBean,真正的业务逻辑是需要另外的程序去处理,因此Jsp+Servlet+JavaBean和Spring MVC、Structs等MVC框架为同一层次的,这些框架必须依赖于其他层去实现业务逻辑,单独的Jsp+Servlet+JavaBean是没有意义的,还得加上一些Java程序,单独的Spring MVC也没有意义,必须要有handler(通常叫Controler,但不是MVC中的C)返回ModelAndView,而handler一般是调用Services层的。因此MVC和三层架构不是并列的关系,MVC只是对三层架构中表现层的进一步划分,同时表现层也有可能采用其他设计模式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: