1. ActionServlet:Struts 的ActionServlet控制导航流。当ActionServlet从容器接到一个请求,它使用URI(或者“path”)也决定哪个Action来处理请求。< Control Layout >
2. Action:用来访问业务逻辑类。一个 Action 可以校验输入,并且访问业务层以从数据库检索信息。为校验输入或者使用输入来更新数据库,Action 需要知道什么值被提交上来。它并不是强制每个Action都要从请求中抓取这些值,而是由 ActionServlet 将输入绑定到 JavaBean 中。< Model Layout >
3.ActionForm:输入 bean 是Struts ActionServlet 类的子类。ActionServlet 通过查找请求的路径可以决定使用哪个 ActionForm(输入 Javabean ) ,Action 也是通过同样的方法选取的。ActionForm扩展了org.apache.struts.action.ActionForm类。< Data >
4.ActionMapping:Struts将这些细节绑定在一个ActionMapping对象中。每个ActionMapping相对于一个特定的路径。当某个路径被请求时,Servlet 就查询 ActionMapping 对象。ActionMapping对象告诉servlet,哪些个Action,ActionForm,和 ActionForward 将被本次请求使用。
每个请求都必须以HTTP响应进行应答。通常,Struts Action 并不自行渲染响应信息,而是将请求转发到其他资源,比如JSP页面。Struts提供一个ActionForward类,用于将一个页面的路径保存为逻辑名称。当完成业务逻辑后,Action 选择并向 Servlet 返回一个 ActionForward 。Servlet 然后使用保存在 ActionForward 对象中的路径来调用页面完成响应。
所有这些细节,关于Action,ActionForm,ActionForward,ActionMapping,以及其它一些东西,都在struts-config.xml 文件中定义。ActionServlet 在启动时读取这个配置文件,并创建一个配置对象数据库。在运行时,Struts 应用根据文件创建的配置对象,而不是文件本身。
struts原理及组件
最新推荐文章于 2019-11-13 08:48:08 发布