网站大量收购独家精品文档,联系QQ:2885784924

第3章设计模式与分层架构.pptVIP

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章设计模式与分层架构

第三章设计模式 与分层架构 ;本章要点;3.1 JSP Model-1设计模式 ;为了解决以上问题,人们在开发Java Web应用时,将JSP和JavaBean结合起来,诞生了JSP+JavaBean这样的技术体系,也称为JSP Model-1模式,如图3-2所示。 ;JavaBean及其使用 JavaBean是一种可重复使用、且跨平台的软件组件。JavaBean可分为两种:一种是有用户界面(UI, User Interface)的JavaBean ;还有一种是没有用户界面,主要负责处理事务(如数据运算,操纵数据库)的JavaBean。JSP通常访问的是后一种JavaBean。 一个标准的JavaBean有以下几个特性: JavaBean是一个公共的(public)类。 JavaBean有一个不带参数的构造方法。 JavaBean所有的属性定义为私有的。 JavaBean通过getXXX()方法设置属性,通过setXXX()方法获取属性。;案例3-1 利用JSP+JavaBean实现基于数据库的登录验证 将数据库的操作封装在JavaBean中,JSP引用JavaBean来实现登录验证。 〖技术要点〗 建立两个JavaBean:User和UserOpr。User用于存放用户数据,UserOpr实现操作。 在JSP中使用jsp:useBean标签声明JavaBean。 这里数据库名为test,建立的SQL脚本为: CREATE DATABASE test; USE test; CREATE TABLE users ( userName VARCHAR(20) PRIMARY KEY, userPwd VARCHAR(20) NOT NULL ); INSERT INTO users VALUES(yang, 1234); ;3.2 MVC与JSP Model-2设计模式 ;JSP Model-2 JSP Model-2体系结构,如图3-3所示,是一种把JSP与Servlet联合使用来实现动态内容服务的方法。它吸取了两种技术各自的突出优点,用JSP技术实现视图的功能,用Servlet技术实现控制器的功能,用JavaBean技术实现模型的功能。这种方式清晰地分离了表达和内容,明确了角色的定义以及开发者与网页设计者的分工。因此Model-2较好地运用了MVC模式。事实上,项目越复杂,使用Model-2体系结构的好处就越大。 ;Web组件的三种关联关系 使用Model-2体系结构就是要发挥各组件的优势,组件之间的关联关系十分重要。Web组件之间存在三种关联关系: 转发、重定向、包含。存在以上关联关系的Web组件可以是JSP或Servlet。 ;转发 转发允许把请求转发给同一应用程序中的其他Web组件。 如果当前的Servlet组件要把请求转发给一个JSP组件,如hello.jsp, 可以在Servlet方法中执行以下代码: RequestDispatcher rd = request.getRequestDispatcher(/message.jsp); rd.forward(request, response); 在JSP页面中,可以使用jsp:forward标签来转发请求,例如: jsp:forward page=/message.jsp / 对于转发,转发的源组件和目标组件可共享request范围内的数据。因此,可以通过request对象传递数据。例如: request.setAttribute(msg,登录成功!a href=\”/helloapp/index.jsp\”进入主页/a);//保存数据 String msg = (String)request.getAttributr(msg);//取数据;重定向 重定向类似于请求转发,但也有一些重要区别: Web组件可以将请求重定向到任一URL,而不仅仅是同一应用中的URL。 重定向的源组件和目标组件之间不共用同一个HttpServletRequest对象,因此不能共享request范围内的数据。 重定向使用response.sendRedirect(String url)方法。;包含 包含关系允许一个Web组件聚集来自同一个应用中其他Web组件的输出数据,并使用被聚集的数据来创建响应结果。这种技术通常用于模板处理器,它可以控制网页的布局。模板中每个页面区域的内容来自不同的URL,从而组成单个页面。这种技术能够为应用程序提供一致的外观和感觉。包含关系的源组件和目标,用同一个HttpServletRequest对象,因此它们共享request内的数据。 Servlet类使用javax.servlet.RequestDispatcher.include()方法包含其他的Web

文档评论(0)

wuyoujun92 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档