用Struts开发基于MVC的Web应用

http://tech.ddvip.com   2006年11月25日    社区交流

本文详细介绍用Struts开发基于MVC的Web应用

  从前面我们提到的ActionForm的用处来看,它似乎应该被视为应用的Model,然而事实上他们应当被当作应用中controller的一部分。ActionForm bean中显示了model的属性,但它们不包含任何持续性逻辑或者业务逻辑。ActionForm只是用来在Model、View之间传递Model信息。

  因为ActionForm属于controller中的一部分,我们将在后面controller的部分来具体了解它。

  Model层

  Struts应用中的model层可以应用任何基于Java的技术实现,比如EJB,Hibernate,或者JDO。通常,model是作为包含数据和业务逻辑的简单JavaBean出现的。如前所述ActionForm对象不是真正model层的体现,同时Model层应当独立于HTML的表单对象。如果可能的话,model对象的开发应当是与使用的开发技术和开发环境(Struts或者其他)无关的,这样我们就可以在不同的环境和应用中很容易地重用它们。

  为了演示,我们开发了一个简单的基于JavaBean的model层对象,它不包含持续性逻辑。这个对象与我们的ActionForm对象映射,未来使用model层对象时,我们只需用更复杂的逻辑来代替它。

  Controller层

  Struts内置一个实现了controller主要功能的Servlet,它提供将需要调用的URL与一个action对象对应起来的功能。这个Servlet被称作ActionServlet,完成下列功能:

  1>根据用户要求决定需要的action;

  2>为View提供View需要的数据;

  3>决定要显示的下一个View。

  ActionServlet(强调:该Servlet已由Struts实现,是Struts架构的核心所在,开发者无须关心)的重头工作是调用一系列简单的Action类。Struts开发人员的工作主要是提供这些actions来实现应用的逻辑。创建action必须实现action接口。此接口包含以下方法:

责编:豆豆技术应用

正在加载评论...