在myeclipse8.6下
Struts2的安装与配置:
第一步:新建web应用项目,加载struts框架的JAR文件。所需JAR文件如下:
第二步:配置struts2项目的启动配置。Struts2框架式通过过滤器启动的。所以要在web.xml中配置struts2的过滤器。
在有些参考书中可能会指定struts2的核心过滤器实现类为org.apache.struts2.dispacher.FilterDispatcher。实际上此类只有在struts2.1.3版本以前使用。在后续的版本中struts2使用的核心过滤器更改为org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter。
第三步:配置struts2框架的配置文件struts.xml。在新建项目的src目录下新建一个为struts.xml的XML文件。之后在strut.xml中配置action等等。
经过以上三步的配置。就成功为JavaWeb应用添加了Struts2的框架支持。我们可以在此基础上开发struts2应用程序了。
***在编写struts的form表单与对应action时要注意一点:表单元素的名称如<input type=”text”name=”username” />中name属性的值必须和后面对应xxAction类的成员变量名称一致。这样命名可以使得在Struts2中直接接收表单中输入域的值并赋给xxAction对象对应名称的成员变量。
****struts.xml配置的结果视图类型为struts默认的dispatcher类型,该类型不会再地址栏中给出结果视图的URL。
Struts2工作流程图:
执行步骤可以分为下面几步:
第一步:客户端向web容器(如tomcat)发送请求(如请求访问index.jsp)
第二步:请求经过一系列的过滤器过滤之后,把该请求传递给Struts2的核心过滤器SrutsPrepareAndExecuteFilter。
第三步:核心过滤器接受到请求信息之后,根据请求的URL(如/login/HelloAction)搜索Action的映射信息。
第四步:如找到对应的映射信息,则在struts.xml文件中对应定义的Action被实例化,并且执行该Action实例的execute()方法,处理用户请求信息。此外,如果在struts.xml文件中还定义了被请求Action的一些拦截器,那么该Action实例被调用前后,那些拦截器也会被先后执行。
第五步:Action对请求处理完毕之后将返回一个逻辑视图,该逻辑视图将在struts.xml文件的相应<result>元素中寻找对应的物理视图,并返回给客户端。