1.MVC模式简介
MVC应用程序被分成3个核心部件:模型、视图、控制器,每个部件分别处理自己的任务。
• 模型(Model):用于存储数据的对象。
• 视图(View):为模型提供数据显示的对象。
• 控制器(Controller):负责具体的业务逻辑操作,即控制器根据视图提出的要求对数据做出处理,并将有关结果存储到模型中,同时负责让模型和视图进行必要的交互,当模型中的数据变化时,让视图更新显示。
2.JSP中的MVC模式
在JSP技术中,“视图”、“模型”和“控制器”的具体实现如下:
• 模型(Model):一个或多个JavaBean对象,用于存储数据,提供简单的setXxx()方法和getXxx()方法。
• 视图(View):一个或多个JSP页面,为模型提供数据显示,JSP页面主要使用 HTML标记和JavaBean标记来显示数据。
• 控制器(Controller):一个或多个Servlet对象,根据视图提交的要求进行数据处理操作,并将有关的结果存储到JavaBean中,然后Servlet使用重定向方式请求视图中的某个JSP页面更新显示。
3.模型的声明周期与视图更新
在JSP中的MVC模式中,Servet创建的Javabean也涉及到生命周期,生命周期分为request、session和application。
本小节假设创建的Javabean类的名字是BeanClass,该类的包名为mybean。
3.1 request周期的JavaBean
Javabean的创建
(1)用BeanClass类的某个构造方法创建bean对象
(2)将所创建的bean对象存放到HttpSerletRequest对象request中,并指定查找该bean的关键字。
视图更新
说明:需要注意的是,所有用户的application生命周期的JavaBean是相同的,即占有相同的内存空间。
3.2 session周期的JavaBean
Javabean的创建
(1)用BeanClass类的某个构造方法创建bean对象
(2)将所创建的bean对象存放到HttpSerletSession对象session中,并指定查找该bean的关键字。
视图更新
说明:需要注意的是,不同用户的session生命周期的JavaBean是互不相同的,即占有不同的内存空间。
3.3 application周期的JavaBean
Javabean的创建
(1)用BeanClass类的某个构造方法创建bean对象
(2)servlet使用getServletContext()方法返回服务器的ServletContext内置对象的引用,将所创建的bean对象存放到服务器这个ServletContext内置对象中,并指定查找该bean的关键字。