`
gk23
  • 浏览: 171764 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

web开发模式

阅读更多
本章重点:

1.如何在JSP页面中引用JavaBean
2.正确理解JavaBean
3.JSP开发模式1
4.JSP开饭模式2

1.JSP页面中的JavaBean
      使用理由:由于在JSP页面中,如果要引用一个类,必须要构建大量的脚本块。因此让
  JSP页面变得很难读懂,所以,为了减少JSP页面中的脚本块使用。我们使用JavaBean引入。
  -JavaBean引入动作<jsp:userBean>:
      如果要在JSP页面使用标准的动作与JavaBean实例通讯,首先必须使用该标签动作实例化
  和使用bean。语法格式为:
  <jsp:useBean id="beanName" scope="page|request|session|application" class="BeanClass" />
  该动作的5个属性:
   -id:代表bean实例化的名字,我们可以在接下来的过程中利用该名字调用bean中的方法。
   -class: bean的包名类名,如:com.lovobook.MyBean
   -scope:bean的生存作用域,有以下4个可选值。
    -page:bean的实例可以在当前页面使用,页面完成后就被删除
    -request:bean的实例可以保存在request作用域中,共用一个request的多个JSP都可用
    -session:bean的实例保存在session作用域中,用户整个会话周期内都可使用
    -application:对当前应用的所有用户都可见该实例。
  <jsp:useBean id="myBean" scope="request" class="com.lovobook.CustomerBean" />
  以上红色动作转化为Servlet代码:
   CustomerBean myBean = (CustomerBean) request.getAttribute("myBean");
   if(myBean == null){
    myBean = new CustomerBean();
    request.setAttribute("myBean",myBean);
   }
  -JavaBean获得属性动作<jsp:getProperty>与设置属性动作<jsp:setProperty>
   -<jsp:getProperty name="beanName" property="propertyname" />
   这里name是指在<jsp:useBean>中指定的id名,propertyname指返回JavaBean中相对应的属性名
  例:<jsp:useBean id="myBean" class="com.lovobook.CustomerBean" scope="page" />
      <p>Name: <jsp:getProperty name="myBean" property="name" />
   -设置属性动作有四种形式的语法:
   -<jsp:setProperty name="BeanName" property="属性名" />
   (该方法要求property必须和表单中的name对应。)
   -<jsp:setProperty name="BeanName" property="属性名" param="参数名" />
   (该方法是从表单中得到param参数的值,再放入property的值中去)
   -<jsp:setProperty name="BeanName" property="属性名" value="属性值" />
   (最容易理解的方法,property就是需要设置的Bean的属性,vlaue是需要设置的值)
   -<jsp:setProperty name="BeanName" property="*" />
   (最后一种方法很好用,只要在表单中设置name与Bean中设置的属性名一样,就可直接
   获取由表单中发送过来的属性值并且设置进Bean的对应属性中去。)

2.JSP开发模式1:
特点:   利用JavaBean来做开发就是JSP开发模式1的特点。他最大的特点就是将一次请求的响应过程完全
  交给一个JSP页面负责,最典型的应用就是让创建表单的JSP页面同时负责处理该表单的请求,也就是
  说JSP页面既要负责输出创建表单的HTML代码,又要处理表单中数据。
缺点:    模式1虽然实现了某种程度的页面显示与业务逻辑分离,但是,JSP除了要负责页面显示外,还要
  负责处理请求和控制业务流程,即根据不同的请求信息调用不同程序代码,没有做到完全显示控制分离
  当要处理非常复杂的业务流程时,JSP页面中内嵌的Java代码就很多,给开发和维护带来极大困难。
  所以,一般模式1只用在系统规模小,业务流程简单的应用程序系统中,业务复杂的大型项目,一般
  都不会采用模式1. 
3.JSP开发模式2:
特点:   MVC架构模式。
  关于MVC架构,我想都不陌生了,之前讲到了很多关于MVC架构的知识。
  在Web开发中使用MVC架构能够很好的利用分层的思想来简化开发和后期维护难度。
  1.开发步骤:
   -定义一系列Bean 来表示数据
   -使用一个Servlet来处理请求
   -在Servlet中填充Bean
   -在Servlet中将Bean存储到请求,会话,或者Servlet上下文中。
   -将请求转发到JSP页面中。
   -在JSP页面中,从Bean中提取数据。

  2.在MVC模式中使用过滤器:
   过滤器是Web开发中非常强大的一层。
          首先,如果我们要在一个Servlet中进行业务处理和判断的话。如果我们要修改项目,就不得修改Servlet
  中的代码,这样,造成了硬编码。所以,我们可以用过滤器解决硬编码。
  采用过滤器作为控制器的特点:
   1.不需要一个特殊的参数来通知过滤器到底请求的是哪个视图。
   2.提供了一个清晰的方法来增加一个新视图。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics