Struts可以运行在任何一个支持JSP1.2和Servlet2.3的WEB Container中Struts将所有的请求提交到同一个中心控制器,org.apache.struts.action.ActionServlet 类
web.xml配置
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
<servlet-mapping>
一个标准的使用了Struts的URL样式如下:
扩展映射:http://www.my_site_name.com/mycontext/actionName.do
路径映射:http://www.my_site_name.com/mycontext/do/action_Name
<servlet-name>action</servlet-name>
<url-pattern>*.do或/do/*</url-pattern>
</servlet-mapping>
Struts运行
Struts首先在Container启动的时候调用ActionServlet的init()方法。初始化各种配置。这些配置写在struts-config.xml文件中。
一个标准的struts-config文件包含如下结构:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
<data-sources /> // 定义数据源
<form-beans /> // 定义ActionForm
<global-exceptions /> // 定义全局异常
<global-forwards /> // 定义全局转向url
<action-mappings /> // 定义action
<controller /> // 配置Controller
<message-resources /> // 配置资源文件
</struts-config>
Struts由上述几部分组成。其中最主要的是Action和Form。下面简单叙述一下其处理过程。
一个请求提交给ActionServlet,ActionServlet会寻找相应的Form和Action,首先将提交的request对象,映射到form中。,然后将form传递给action来进行处理。action得到form,对xml的mapping,request,response四个对象,并调用execute()方法然后返回一个forward-url(相应视图)给ActionServlet,最终返回给客户端。
我们来看一个最简单的实例
说明:实例一是最简单的Struts程序。它仅仅使用了1个form和1个action功能是将首页输入的值传递给action,经过判断后返回结果。如果是空则返回empty。代码如下:
input.jsp:
<form method="post" action="/example.do">
请输入值
<input type="text" name="test"/>
<br><br>
<input type="submit" name="Submit" >
<input name="reset" type="reset" >
</form>
struts-config.xml:
<struts-config>
// 配置formbean
<form-beans>
<form-bean name="exampleActionForm" type="com.zotn.struts.example1.ExampleActionForm" />
</form-beans>
// 配置action
<action-mappings>
<action name="exampleActionForm" path="/example" type="com.zotn.struts.example1.ExampleAction">
// action内部的foward
<forward name="foward" path="/foward.jsp" />
</action>
</action-mappings>
</struts-config>
Action:
public class ExampleAction extends Action {
public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response) {
// 得到对应的form
ExampleActionForm eaf = (ExampleActionForm)actionForm;
// 取得输入的test
String test = eaf.getTest();
// 判断并将值放入request
if ("".equals(test)){
request.setAttribute("test","empty");
}else{
request.setAttribute("test",test);
}
// 通过mapping寻找相应的url,返回ActionFoward
return actionMapping.findForward("foward");
}
}
FormBean:
public class ExampleActionForm extends ActionForm {
private String test;
public String getTest() {
return test;
}
public void setTest(String test) {
this.test = test;
}
}
分享到:
相关推荐
简单介绍struts的安装
Struts开发指南之安装与使用.doc
struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包struts2安装包...
2. Struts安装 - 2 - 3. Struts框架 - 7 - 3.1 JSP Model 1 - 7 - 3.2 JSP Model 2 - 8 - 3.3 Struts - 8 - 4. JSP 自定义标签库 - 43 - 4.1 概述 - 43 - 4.2 Struts包含的标签库 - 44 - 4.3 在Struts应用中使用标签...
struts2简介与入门,简要介绍了struts2的起源和初步的使用方法,适合入门学习
Struts的与Web App的关系 5 Struts的体系结构 5 从视图角度(View) 6 从模型角度(Model) 6 从控制器角度(Controller) 6 Struts的基本组件包 6 Struts framework的工作原理和组件 7 Struts ActionServlet...
本节将介绍如何下载和Struts2,并介绍Struts2包内都包含哪些文件,各自有什么作用,以及如何在Tomcat中安装Struts2。最后发布并测试Struts2 自带的例子验证Struts2安装是否成功。
pager-taglib 安装包和使用手册。
本文首先对 Easy Struts 及其安装配置步骤进行了简介,并通过一个循序渐进的例子介绍了如何构建一个基本的 Struts 应用程序。本文还介绍了增强 Struts 应用程序的各种方法,例如连接数据库,对应用程序进行模块化,...
Struts的与Web App的关系 5 Struts的体系结构 5 从视图角度(View) 6 从模型角度(Model) 6 从控制器角度(Controller) 6 Struts的基本组件包 6 Struts framework的工作原理和组件 7 Struts ActionServlet控制器...
本书是《Struts 2权威指南》的第3版,本书介绍了Struts 2最新版本:Struts 2.3.1.2。本书全面介绍了Struts 2框架的各知识点,从Struts 2框架的MVC原理、Struts 2的处理机制开始讲起,全面覆盖了Struts 2的...
很详细的视频。 netbeans6 安装struts2插件。
Struts在Tomcat中的安装配置及工作流程
如何搭建struts2环境——/struts-normal/如何搭建struts2环境.txt
次资源中包含了本人根据学习struts、struts1.2java框架总结出来的学习笔记,以及对这两个版本异同的比较,包含框架的从入门到精通,适合各种不同阶段的人员学习......
1. 安装 Struts 。由于 Struts 的入口点是 ActionServlet ,所以得在 web.xml 中配置一下这 个 Servlet 。 2. 编写 Action 类(一般从 org.apache.struts.action.Action 类继承)。 3. 编写 ActionForm 类(一般从 ...
第十一章 使用Struts快速实现Web开发 11.1 Struts介绍 11.1.1 Struts简介 11.1.2 Struts和Spring比较 11.1.3 下载Struts 11.1.4 配置Struts 11.2 Struts的核心 11.2.1 ActionServlet(分发器) 11.2.2 Action(控制...
Struts 2安装配置说明,基于MyEclipse
该资源和视频配套的 struts2_day01讲义.pdf,需要的小伙伴下载了