Struts1.X 学习笔记1

这两天在学习Struts的基础知识,下面谈一下自己对其感悟。Struts是Apache基金会的一个开源项目,是应用最广泛的Java Web开发框架。Struts提供了一个基础框架,具备MVC的结构。使用它,我们不用自己搭建一套MVC结构来开发Web Project了。

在MyEclipse中已经集成了Struts,我们在新建一个Web Project后,通过相关操作就能在项目中加入Struts框架。然后按照框架的设计添加相应的代码,用起来确实挺方便的。在Know What后,我需要Know How to use it.下面我觉得有几个概念需要先了解的。

1.Action

Action是Struts的核心,负责处理实际的业务逻辑。Action扮演着Servlet的角色,可以看为Servlet的一部分,但它不是Servlet。Struts通过反射调用Action的方法。

2.ActionServlet

ActionServlet是Struts框架的内置核心控制器组件。Action是由Struts的ActionServlet产生并维护。它继承了javax.servlet.http.HttpServlet类,它在MVC模式中扮演着中央控制器的角色。在Struts中用于接收用户请求信息,然后根据系统配置将请求传递给相应的Action对象。

3.Form Bean

有个形象的比喻它是“数据传递员",负责页面和Action间的数据传递。Form Bean是对表单的封装,其实是个简单的Java Bean,有属性以及对应的getter, setter方法。替代了request.getParameter("")方法,提供了集中验证方法。

4.JSP

JSP主要负责界面显示。

Struts的工作流程如下:

1.初始化:struts框架的总控制器ActionServlet是一个Servlet,它在web.xml中配置成自动启动的Servlet,在启动时总控制器会读取配置文件(struts-config.xml)的配置信息,为struts中不同的模块初始化相应的对象。

2.发送请求:用户提交表单或通过URL向WEB服务器提交请求,请求的数据用HTTP协议传给web服务器。

3.form填充:struts的总控制器ActionServlet在用户提交请求时将数据放到对应的form对象中的成员变量中。

4.派发请求:控制器根据配置信息对象ActionConfig将请求派发到具体的Action,对应的formBean一并传给这个Action中的excute()方法。

5.处理业务:Action一般只包含一个excute()方法,它负责执行相应的业务逻辑(调用其它的业务模块)完毕后返回一个ActionForward对象。服务器通过ActionForward对象进行转发工作。

6.返回响应:Action将业务处理的不同结果返回一个目标响应对象给总控制器。

7.查找响应:总控制器根据Action处理业务返回的目标响应对象,找到对应的资源对象,一般情况下为jsp页面。

8.响应用户:目标响应对象将结果传递给资源对象,将结果展现给用户。

 

参考资料:http://blog.sina.com.cn/s/blog_5e3d14d20100e2jj.html

 

你可能感兴趣的:(开发相关)