JavaWeb开发一般将业务分为三个层次:controller控制层、model业务模型层、view视图层。model层又可以继续分为dao层和service层。
几个层次分别是这样的关系,controller层是控制一切的存在,dao层是对基础数据库操作的实现,service层是对dao层的封装,view层用于渲染model层运行结果。
那么在单纯的Servlet开发中,其各部分都扮演了怎样的角色呢。

以这样的一个业务为例,很明显Servlet不适合作为view,在Servlet中添加HTML代码会大大降低代码的可阅读性与可维护性。Servlet主要扮演的角色就是controller层,由Servlet决定调用哪个dao来处理业务(一般MVC框架下应该是调用service,但是本项目中并没有对service进行体现,因此controller直接调用了dao层),然后决定使用什么view返回给浏览器。
dao层就是直接操控数据库的部分。dao层可分为dao接口层与dao实现层。但是本例中dao层的设计并没有遵从MVC设计规范,应该先声明dao层的接口,再将接口分别实现,这样可以提高dao层的可维护性。
jsp文件在本例中就是view层的身份,接受从controller中返回的数据并渲染成view,返回给浏览器。




Comments | NOTHING