初学JAVA---对struts框架的理解

Struts的ActionServlet控制导航流,其他Struts类,比如Action,用来访问业务逻辑类。当ActionServlet从容器接收到一个请求,它使用URI(或者路径“path”)来决定哪个Action将用来处理请求。一个Action可以校验输入,并且访问业务层以从数据库或其他数据服务中检索信息。

    为校验输入或者使用输入来更新数据库,Action需要知道什么值被提交上来。它并不是强制每个Action都要从请求中抓取这些值,而是由ActionServlet将输入绑定到JavaBean中。

    输入bean 是Struts ActionForm 类的子类。ActionServlet通过查找请求的路径可以决定使用哪个ActionForm,Action也是通过同样的方法选取的。ActionForm扩展了org.apache.struts.action.ActionForm类。每个请求都必须以HTTP响应进行应答。通常,Struts Action并不自行渲染响应信息,而是将请求转发到其他资源,比如JSP页面。Struts提供一个ActionForward类,用来将一个页面 的路径保存为逻辑名称。当完成业务逻辑后,Action选择并向Servlet返回一个
ActionForward。Servlet 然后使用保存在ActionForward对象中的路径来调用页面完成响应。

    Struts 将这些细节都绑定在一个ActionMapping对象中。每个ActionMapping相对于一个特定的路径。当某个路径被请求时,Servlet就查询ActionMapping对象。ActionMapping对象告诉servlet,哪些个Action,ActionForm,和ActionForward将要被本次请求使用。

    所有这些细节,关于Action,ActionForm,ActionForward,ActionMapping,以及其它一些东西,都在struts-config.xml文件中定义。ActionServlet 在启动时读取这个配置文件,并创建一个配置对象数据库。在运行时,Struts应用根据文件创建的配置对象,而不是文件本身。

posted @ 2007-09-23 20:24    阅读(308)  评论(0编辑  收藏  举报