JSP教程 课件 第7章 MVC模式_第1页
JSP教程 课件 第7章 MVC模式_第2页
JSP教程 课件 第7章 MVC模式_第3页
JSP教程 课件 第7章 MVC模式_第4页
JSP教程 课件 第7章 MVC模式_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章MVC模式主要内容MVC介绍JSP中的MVC模式

模型的生命周期与视图更新MVC模式的简单实例难点模型的生命周期与视图更新关键实践等差、等比级数和点餐7.1MVC模式介绍模型-视图-控制器(Model-View-Controller),简称为MVC。MVC已经成为软件设计者必须熟练使用的开发模式。本章必须理解、掌握在JSP程序设计中怎样具体体现MVC开发模式(其他语言的程序设计是非常类似的,仅仅是具体使用的API不同而已)。MVC是一种通过三部分构造一个软件或组件的理想办法。■模型(model)用于存储数据的对象。■视图(view)向控制器提交所需数据、显示模型中的数据。■控制器(controller)负责具体的业务逻辑操作,即控制器根据视图提出的要求对数据做出(商业)处理,将有关结果存储到模型中,并负责让模型和视图进行必要的交互,当模型中的数据变化时,让视图更新显示。7.2JSP中的MVC模式■模型(Model)一个或多个Javabean对象,用于存储数据。■视图(View)一个或多个JSP页面,其作用是向控制器提交必要的数据和显示数据。JSP页面可以使用HTML标记、Javabean标记以及Java程序片或Java表达式来显示数据。视图的主要工作就是显示数据,对数据的逻辑操作由控制器负责。■控制器(Controller)一个或多个servlet对象,根据视图提交的要求进行数据处理操作,并将有关的结果存储到Javabean中,然后servlet使用转发或重定向的方式请求视图中的某个JSP页面显示数据。比如让某个JSP页面通过使用Javabean标记、Java程序片或Java表达式显示控制器存储在Javabean中的数据。7.3模型的生命周期与视图更新7.3.1requestbean■bean的创建servlet创建requestbean的步骤如下:(1)用BeanClass类的某个构造方法创建bean对象,例如:

BeanClassbean=newBeanClass();(2)

request.setAttribute("keyWord",bean);■视图更新servlet所请求的JSP页面可以使用相应的标记显示该requestbean中的数据。该JSP页面对请求做出响应之后,requestbean所占有的内存被释放,结束自己的生命。RequestDispatcherdispatcher=request.getRequestDispatcher("show.jsp");dispatcher.forward(request,response);servlet所请求的JSP页面,比如show.jsp页面可以使用如下标记获得servlet所创建的requestbean:<jsp:useBeanid="keyWord"class="save.data.BeanClass"scope="request"/>该标记中的id是servlet所创建的bean的id。然后JSP页面可以使用相应的标记或程序片显示该requestbean中的数据。7.3模型的生命周期与视图更新7.3.2sessionbean■bean的创建servlet创建sessionbean的步骤如下:(1)用BeanClass类的某个构造方法创建bean对象,例如:BeanClassbean=newBeanClass();(2)HttpSessionsession=request.getSession(true);session.setAttribute("keyWord",bean);■视图更新Web服务目录的各个JSP都可以使用<jsp:useBeanid="keyWord"class="save.data.BeanClass"scope="session"/>标记获得servlet所创建的sessionbean,然后使用相应的标记或程序片显示该requestbean中的数据。如果servlet希望某个JSP显示其中的数据,可以使用RequestDispatcher对象转发到该页面,也可以使用HttpServletResponse类中的重定向方法(sendRedirect)定向到该页面。7.3模型的生命周期与视图更新7.3.3applicationbean■bean的创建ervlet创建applicationbean的步骤如下:(1)用BeanClass类的某个构造方法创建bean对象,例如:BeanClassbean=newBeanClass();(2)getServletContext().setAttribute("keyWord",bean);■视图更新servlet建bean的第(2)步骤决定了bean为applicationbean。用户在访问Web服务目录的各个JSP中都可以使用<jsp:useBeanid="keyWord"class="save.data.BeanClass"scope="application"/>标记获得servlet所创建的applicationbean,然后使用相应的标记或程序片显示该applicationbean中的数据,例如,使用<jsp:getPropertyname="keyWord"property="bean的变量"/>标记显示该applicationbean中的数据。如果servlet希望某个JSP显示其中的数据,可以使用RequestDispatcher对象向该JSP页面发出请求,也可以使用HttpServletResponse类中的重定向方法(sendRedirect)。7.4MVC模式的简单实例7.4.1简单的计算器例子7_1设计一个Web应用,一个requestbean,一个JSP页面example7_1.jsp,一个servlet。1.bean(模型)Example7_1_Bean.javaJSP页面example7_1.jsp提供一个表单,用户可以通过表单输入两个数、选择运算符号提交给servlet控制器。bean负责存储运算数、运算符号和运算结果,servlet控制器负责运算,将结果存储在requestbean中,并负责请求JSP页面example7_1.jsp显示requestbean中的数据。2.JSP页面(视图)example7_1.jsp3.servlet(控制器)Example7_1_Servlet.java4.web.xml(部署文件)Example7_1_Bean.java中的getXxx和setXxx方法可以返回和设置模型中的数据,但不参与数据的处理。页面负责提供输入和显示数据的视图名字为compute的servlet控制器负责计算四则运算的结果,并将结果存放在id是digitBean的bean中,然后用重定向的方法,请求example6_2.jsp显示bean中的数据。向ch7\WEB\INF\下的部署文件web.xml添加servlet和servlet-mapping标记(见6.1.2),部署的servlet的名字是computer,访问servlet的url-pattern是/computer。web.xml7.4MVC模式的简单实例7.4.1简单的计算器1.Bean的编译2.Servlet的编译javac-cp.;servlet-api.jarsave\data\*.java进入ch7\WEB-INF\classes>目录,如下编译全部的bean进入ch7\WEB-INF\classes>目录,如下编译全部的servletjavac-cp.;servlet-api.jarhandle\data\*.java千万不要忘记输入".;"7.4MVC模式的简单实例7.4.1简单的计算器例子7_1设计一个Web应用,一个requestbean,一个JSP页面example7_1.jsp,一个servlet。1.bean(模型)Example7_1_Bean.java2.JSP页面(视图)example7_1.jsp3.servlet(控制器)Example7_1_Servlet.java4.web.xml(部署文件)web.xml7.4MVC模式的简单实例7.4.2表白墙例子7_2设计一个Web应用,一个applicationbean,3个JSP页面一个servlet。1.bean(模型)JSP页面example7_2.jsp提供一个form表单,用户使用form表单白将表白信息提交给servlet控制器。servlet给表白人提交的数据分配一个id和时间,然后将表白人的id、昵称、标题,内容,时间存储到applicationbean中,然后定向到example7_2_show.jsp页面显示applicationbean中的数据。2.JSP页面(视图)3.servlet(控制器)ExpressWish_Servlet.java4.web.xml(部署文件)创建applicationbean需要ExpressWish_Bean类,ExpressWish类是ExpressWish_Bean需要的一个类。example_7_2_show.jsp负责显示存储在bean中的全部表白内容,example7_3_delete.jsp页面负责删除bean中的某个表白内容名字为handleExpress的servlet控制器负责给提交的数据分配一个id和时间,然后将表白人的id、昵称、标题,内容,时间存储到applicationbean中。向ch7\WEB\INF\下的部署文件web.xml添加servlet和servlet-mapping标记(见6.1.2),部署的servlet的名字是handleExpress,访问servlet的url-pattern是/handleExpress。web.xmlExpressWish.javaExpressWish_Bean.javaexample7_2.jspexample_7_2_show.jspexample_7_2_delete.jsp7.4MVC模式的简单实例7.4.2表白墙例子7_2设计一个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论