MVC

MVC: M(Model)- V(View)- C(Controller)

M(Model)     : 应用的业务逻辑(通过JavaBean,EJB组件实现)
V(View)        : 应用的表示面  (由JSP页面产生)
C(Controller): 提供应用的处理过程控制
                           (包括:servlet,service,DAO)
                           (servlet调用service方法,servive最终调用DAO)

举例:
        前提:访问一个‘修改学生信息’的功能。学生选择加入班级,会影响2张表:班级表中的人数+1,学生表中的人数+1。
        程序内部的走向:用户在网页端按下更新(update)按钮,url访问到controller(servlet),servlet不处理业务,调用service()方法,updateStudent()里面写具体业务。然后保存的时候,就调用DAO层的studentDao.save(student),classDao.save(class)。
        好处:因为我们在service这层进行事务处理。
                  例如1,如果更新保存class表的时候出错,那么student表是不是也得让他报错,不然数据不一致了。
                  例如2,如果其他地方也要保存student,那么我们只需要在那个xxxxServive里直接调用studentDao,然后调用studentDao.save就行了。
                  例如3,DAO层,只管与数据库打交道,什么时候,我数据库从mysql,换成成oracle,只需要修改DAO层的代码就行,设置不要修改。

图解:

 

猜你喜欢

转载自JnnJ.iteye.com/blog/2237167
MVC