11ServletMVC模式

上传人:cl****1 文档编号:575241716 上传时间:2024-08-17 格式:PPT 页数:27 大小:3.24MB
返回 下载 相关 举报
11ServletMVC模式_第1页
第1页 / 共27页
11ServletMVC模式_第2页
第2页 / 共27页
11ServletMVC模式_第3页
第3页 / 共27页
11ServletMVC模式_第4页
第4页 / 共27页
11ServletMVC模式_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《11ServletMVC模式》由会员分享,可在线阅读,更多相关《11ServletMVC模式(27页珍藏版)》请在金锄头文库上搜索。

1、Inspur Education Inspur GroupServlet MVCServlet MVC模式模式Inspur Education 知识点回顾知识点回顾u过滤器过滤器FilterFilter简介简介u过滤器过滤器FilterFilter用途用途u过滤器生命周期过滤器生命周期u过滤器实现过滤器实现u过滤器链的实现过滤器链的实现2Inspur Education 目标目标u MVC MVC的模式介绍的模式介绍u JSP JSP中的中的MVCMVC模式模式u MVC MVC模式的简单举例模式的简单举例Inspur Education DAODAO模式功能模式功能u封装对于数据源的操作封装

2、对于数据源的操作u数据源可能是文件、数据库等任意存储方式数据源可能是文件、数据库等任意存储方式u负责管理与数据源的连接负责管理与数据源的连接u负责数据的存取(负责数据的存取(CRUD)CRUD)Inspur Education DAODAO模式的类图模式的类图Inspur Education DAO DAO 模式中的对象模式中的对象uBusiness ObjectBusiness Object代表数据的使用者uDataAccessObjectDataAccessObject抽象并封装了对底层数据源的操作uDataSourceDataSource数据源uTransferObjectTransfe

3、rObject表示数据的Java BeanInspur Education MVCMVC的模式介绍的模式介绍uMVCMVC模式的核心思想是有效地组合模式的核心思想是有效地组合“视图视图”、“模型模型”和和“控制器控制器”。u掌握掌握MVCMVC模式对于设计合理的模式对于设计合理的WebWeb应用框架有着十分重要应用框架有着十分重要的意义。的意义。 Inspur Education 模型模型1 1uJSPJSP开发的两种模型(开发的两种模型(Model1/Model2)Model1/Model2)u模型模型1 1使用JSP+JavaBeans将页面显示和业务逻辑处理分开JSP实现页面显示,响应请

4、求并将结果返回给客户JavaBean对象保存数据和实现业务逻辑Inspur Education 模型模型1 1的架构示意图的架构示意图Web服务器服务器浏浏览览器器JSPJavaBeans数据库数据库请求响应请求响应Inspur Education 模型模型1 1的实例(详细)的实例(详细)u按照模型按照模型1 1编写一个编写一个用户登录验证的程序用户登录验证的程序u分析分析页面:login.html:登录主页面;loginchk.jsp:创建数据对象,保存用户登录信息;调用方法进行验证;验证通过,转发至welcome.jsp,否则loginerr.jsp,请求重新登录loginerr.jsp

5、:登录错误页面welcome.jsp:登录成功页面Inspur Education 业务类业务类u数据保存和处理UserBean.java:保存用户登录信息,向JSP页面传递信息;UserCheckBean.java:对用户名和密码进行验证;完成登录验证功能的主要业务逻辑;Inspur Education UserBean.javaUserBean.javapublic class UserBean private String name; private String password;Inspur Education UserCheckUserCheckpublic class UserC

6、heckBeanpublic class UserCheckBean protected UserBean user; protected UserBean user; public UserCheckBean( UserBean user ) public UserCheckBean( UserBean user ) this.user=user; .this.user=user; . public boolean validate() public boolean validate() String name=user.getName(); String password=user.get

7、Password(); /实际应用中,你应该查询数据库,验证用户名和密码。 if(张三.equals(name) & 1234.equals(password) return true; else return false; Inspur Education loginchk.jsploginchk.jspjsp:useBean id=user scope=session class=flower.grass.UserBean/% %Inspur Education 模型模型1 1分析分析u优点:实现了页面显示与业务逻辑的分离优点:实现了页面显示与业务逻辑的分离u缺点缺点需要在JSP页面控制流

8、程转向并且调用JavaBean代码业务逻辑复杂时,JSP编写变得复杂u总结:简单的小型应用,可以使用总结:简单的小型应用,可以使用Inspur Education MVCMVC模式介绍模式介绍u模型模型2 2将模型1中JSP嵌入的流程控制和部分逻辑处理代码提取至一个单独的角色:控制器模型2是MVC架构模式在WEB开发中的应用Inspur Education MVCMVC模式介绍模式介绍 u MVC是一种设计模式,由Trygve为发展SmallTalk在1978年提出的,出现在GUI设计中。 u MVC按功能对各种对象进行分割,目的是为了将对象的耦合程度降至最低。Inspur Education

9、 MVCMVC模式介绍模式介绍uMVCMVC是一种通过是一种通过3 3个不同部分构造一个软件或组件的理想个不同部分构造一个软件或组件的理想办法:办法:模型(Model)封装了最核心的功能,用于存储数据以及处理用户请求的业务逻辑。视图(View)系统和用户交互的界面,从模型那获得数据并表现数据,同时将用户请求通知通知器。控制器(Controller)扮演调度者的角色,即控制器根据视图提出的请求判断将请求和数据交给那个模型处理,处理后的有关结果交给哪个视图更新显示Inspur Education JSPJSP中的中的MVCMVC模式模式u模型(模型(ModelModel):一个或多个):一个或多个

10、JavaBeanJavaBean对象,用于存储数据和处理对象,用于存储数据和处理数据;数据;u视图(视图(ViewView):一个或多个):一个或多个JSPJSP页面,为模型提供数据显示,页面,为模型提供数据显示,JSPJSP页页面主要使用面主要使用 HTMLHTML标记和标记和JavaBeanJavaBean标记来显示数据。标记来显示数据。u 控制器(控制器(ControllerController):一个或多个):一个或多个ServletServlet对象,根据视图提交对象,根据视图提交的请求进行控制,生成的请求进行控制,生成JavaBeanJavaBean实例输出给实例输出给JSPJSP

11、页面页面. .Inspur Education 模型模型2 2的架构示意图的架构示意图Web服务器服务器浏浏览览器器HtmlJSP(视图视图)JavaBeans(模型模型)数据库数据库请求请求响应响应Servlet(控制器控制器)选择视图选择视图实例化实例化请求请求Inspur Education 模型模型2 2的实例的实例u按照模型按照模型2 2的架构重写的架构重写用户登录验证程序用户登录验证程序u分析:分析:login2.html:登录主页面;由ControllerServlet来接收请求ControllerServlet.java:接收用户登录请求信息,调用JavaBean组件对其进行验

12、证,并根据结果调用JSP页面返回客户端Inspur Education login2.htmllogin2.html 用户名:用户名: 密码:密码: Inspur Education ControllerServlet.javaControllerServlet.java String action=request.getParameter(action); String action=request.getParameter(action); / / 验证请求合法性验证请求合法性 if ( if (!isValidated!isValidated(request) & !(login.equ

13、als(action) (request) & !(login.equals(action) gotoPage(login2.html,request,response);gotoPage(login2.html,request,response); return; return; Inspur Education ControllerServlet.javaControllerServlet.javaif(login.equals(action) UserBean user=new UserBean(); user.setName(request.getParameter(name); us

14、er.setPassword(request.getParameter(password); UserCheckBean uc=new UserCheckBean(user); if(uc.validate() Inspur Education 计算三角形面积计算三角形面积u题目:输入三角形三条边的长度,计算并显示三角形的题目:输入三角形三条边的长度,计算并显示三角形的面积。面积。u设计分析:设计分析:界面JSP:输入三条边(input.jsp),显示三角形面积(show.jsp)模型JavaBean:(Triangle.java)判断三条边是否能组成三角形,计算三角形面积控制器Servlet:从input.jsp接收三条边输入的数据,创建响应的JavaBean实例,验证输入合法性后再计算三角形面积结果发给show.jspu思考思考:如果输入比较复杂,验证合法性工作怎么处理比较好?(从:如果输入比较复杂,验证合法性工作怎么处理比较好?(从功能上考虑)功能上考虑)Inspur Education 总结总结u MVC MVC的模式介绍的模式介绍u JSP JSP中的中的MVCMVC模式模式u MVC MVC模式的简单举例模式的简单举例Inspur Education Inspur Group谢谢!

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号