当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:13:00  来源:本站整理

<b>Struts框架之构建Model组件</b>[Java编程]

赞助商链接



  本文“<b>Struts框架之构建Model组件</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

1、概述

Model就是在对用户恳求的整个掌握历程中,真正处理用户恳求并保存处理后果的对象,在整个历程中,我们普通操纵JavaBean来把一些信息保存起来以便在各个对象之间传送.因为在框架中,Model对象是真正处理商业逻辑功效的对象,因此也就是框架中利用需务实现相关性最大的部份. 在Struts的实现里,Model的具体表现情势就是ActionForm对象和与其对应的Action对象了.对用户提交表单的数据举行校验,乃至对数据举行预处理都能在ActionForm中完成.普通的利用中,普通是一个Model对象和一个恳求页面对应的关系,但也可以一个Model对象对应多个页面恳求.假如struts-config.xml配置文件没有指定一个Model对象对应的Action,那么掌握器将直接把(通过Model对象完成数据封装的)恳求转到一个View对象.下图表示的是Model layer 的层次构造.

在Struts中Model以一个或多个java bean的情势存在.这些bean分为三类:Action Form、Action、JavaBean or EJB.Action Form普通称之为FormBean,封装了来自于Client的用户恳求信息,如表单信息.Action普通称之为ActionBean,获得从ActionSevlet传来的FormBean,取出FormBean中的相关信息,并做出相关的处理,普通是调用JavaBean或EJB等.

很多需求文档将构建Web利用的核心集合在视图上.我们必须确保每一个提交的恳求都在模子视图中都已经被定义.普通,开辟者在模子组件中关注于开辟JavaBean类以实现全部的功效需求. 利用应当精确的利用哪些beans,按照其需求差别而差别宏大,但是,在经过辨别后普通都能分被为若干个类别.

2、成立Model 组件

1、JavaBeans

在一个Web底子的利用中,能利用很多差别的"属性(attributes)"调集来保存(和拜候)JavaBeans. 每个调集都有它自己差别的生命周期和beans存储在那边的可见度. 同时,beans通过 作用域 来定义生命周期和可见度法则. 在JavaServer Pages (JSP)标准中定义了作用域挑选利用以下几项(在括号中是servlet API中的等价概念定义).

page :Beans只会在一个JSP页中可见,只在当前的恳求周期中存在. (在 service 办法中的本地变量)

request : Beans只会在一个JSP页中可见,与page相同或servlet包含本页,或转发到本页. (Request属性)

session :Beans能被全部的JSP页和servlet通过特定的用户session来利用, 它可以超越一个或多个恳求. (Session属性)

application :Beans能被Web利用中的全部JSP页和servlets来利用. (Servlet context属性)

我们需求记着的是在一个web利用中JSP页面和servlet会同享bean调集的设置. 比方在一个servlet中将一个bean存储到attribute中以下:

MyStudy Mystudy = new MyStudy(...);

request.setAttribute("cart", MyStudy);

在这个servlet将恳求转发给一个JSP页面后,我们即刻可以利用尺度的行动标签(tag)来看到呼应的值:

<jsp:useBean id="cart" scope="request" class="com.mycompany.MyApp.MyStudy"/ >

2、ActionForm Beans

在 actionform beans频繁地有属性相当于属性在我们的model beans的时刻,那form beans它们自己应当考虑成为一个掌握器组件. 一样地,他们能在模子和视图层之间传送资料.

Struts框架普通假定我们在我们的利用中已经为输入定义一个 ActionForm beans(简而言之,一个扩大自 ActionForm 类的Java类). ActionForm beans有时仅仅调用表单beans(form beans). 这大概会是一个细粒度的对像,它让每个表单对应一个bean,还有就是一个bean服务于若干个表单乃至全部利用形成粗粒度的情形.

假如在我们的Struts配置文件中定义了bean,Struts的controller servlet在调用得当的 Action 办法前将自动为我们供应以下服务:

利用得当的关键字查抄在用户得当的作用域(request或session)中能否有得当类的bean的一个实例.

假如没有这样的实例可用,则自动成立一个新的bean实例并将期加入到得当的作用域中(request或session).

关于每个恳求参数通过其名称来对应到bean的一个属性(property)上,并调用呼应的setter办法来设置属性值. 这个办法近似于尺度JSP中以以通配符"*"来利用 <jsp:setProperty > 标志.

更新后的 ActionForm bean被传送给 Action 类[ org.apache.struts.Action ] 的 execute 办法, 以使这些值能被我们的系统状况和业务逻辑bean来利用.


  以上是“<b>Struts框架之构建Model组件</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .