谁能介绍一下struts中的action?

当然是越详细越好啦!
^_^

struts的控制器有:ActionServlet,RequestProcessor,还有就是具体的Action

struts最重要的类ActionServlet继承于HttpServlet。
所以说所谓的struts不过是一个servlet.

首先看一个web配置文件谈谈Struts的启动。

这个配置文件告诉我
所谓ActionServlet就是一个servlet。在这里名字叫作action.
任何以.do结束的URL都去会访问这个叫做action的servlet.
这个叫action的servlet在服务器装载的时候会以最高优先级被初始化。
初始化时struts-config.xml等init-param信息会被封装到一个ServletConfig中
并调用这个servlet的init方法。具体strtus的init方法的内容比较复杂这里省略。
至此Struts启动初始化工作完成。

现在具体谈谈struts响应一个请求的过程(也就是servlet.service)

一般struts入门的时候都知道struts框架3个重要的类。
ActionServlet,Action,ActionForm.
但其实有一个重要的类被忽视了就是RequestProcessor。
它透明的协调了ActionServlet,Aciton和ActionForm.

当ActionServlet接受一个请求时ActionServlet会调用超类方法service()
service接着会调用doGet,doPost。
ActionServlet的doGet,doPost都会调用RequestProcessor的process()处理请求。
但是process内部很复杂会调用N个processXXXX(也都是RequestProcessor的方法).
其实这也就是所谓Struts处理请求的过程了。

先谈下方法的调用次序
1.processMultipart()
2.processPath()
3.processLocale()
4.processContent()
5.processNoCache()
6.processPreprocess()
7.processMapping()
8.processRoles()
9.processActionForm()
10.processPopulate()
11.processValidate()
12.processForward()
13.processInclude()
14.processActionCreate()
15.processActionPerform()
16.processActionForward()
今天先谈一些简单的顺序流程7->9->10->11->14->15->16
processMapping 判断是否存在指点定的ActionMap
processActionForm 寻找或创建一个ActionForm,并保存
processPopulate 调用ActionForm.reset然后将表单数据放入ActionForm
processValidate 调用ActionForm.validate验证表单
processActionCreate 创建或寻找一个Action
processActionPerform 执行Action的execute方法
processActionForward 根据Action.execut()的返回对象ActionForword重定向
温馨提示:内容为网友见解,仅供参考
无其他回答

谁能介绍一下struts中的action?
struts最重要的类ActionServlet继承于HttpServlet。所以说所谓的struts不过是一个servlet.首先看一个web配置文件谈谈Struts的启动。这个配置文件告诉我 所谓ActionServlet就是一个servlet。在这里名字叫作action.任何以.do结束的URL都去会访问这个叫做action的servlet.这个叫action的servlet在服务器装载的时候会以...

ACTION简介
Action类是Struts组件中的核心元素,它扮演着用户请求与实际业务逻辑之间的关键角色。作为用户操作的业务代理,每当RequestProcessor类接收到请求并创建Action实例后,它会调用Action类的processActionPerform()方法。这个方法的执行路径首先会导向Action的execute()方法,这个方法是执行用户请求的核心环节。在execute...

strut中action的具体用噶
简单的说的话struts中的action相当于是servlet,是个控制器,控制业务逻辑

...1.在struts2中,在jsp页面是如何获取Action中值的?需要去理解源代码吗...
struts是采用ognl模型,就是对象关系模型,想要得到action中的值,首先的一点这个值要有set和get方法,在你请求action的时候,会重新生成一个action对象--》调用set方法给这个属性赋值,在jsp上展示用的是get方法,例如你有一个属性name需要展示,set、get方法写好后,在你请求的action中给name赋值,页面就...

帮忙介绍一下strucs1中的Action接口
Struts中的Action不是抽象方法也不是接口,每个自定义的Action都必须继承继承自Struts提供的org.apache.struts.action.Action,继承DispatchAction可以在自定义的Action同时处理多个业务操作。当ActionServlet接收到一个用户请求时,将执行如下流程:1.检索和用户想匹配的ActionMapping实例,如果不存在,就返回用户...

struts2中action的作用
action就充当着控制器的作用,在它里面调用dao里面的方法,然后在返回一个字符串,调转到与字符串相对于的页面中。

在线等 javaee struts 一个action包含什么
第一个。一个action有几个功能,这个问题一般看你的实体有多少功能,你可以想象下,action就是动作的意思。比如你有一个实体类entity或者domain包里面,有个user类,那么user类有什么动作呢,当然要有登陆,注册,注销,等等这些操作,那么OK,把这些功能写到一个action里面。调用的时候可以使用方法的动态...

请教关于struts中action的使用,求下边代码的详解……
1.首先从jsp页面说起 在jsp页面里有 (或者PaAction,这要根据你具体上下文环境)。有个文本框,你输出1或2或3或4或5,然后点击submit按钮。提交这个jsp。2.提交后就会到你给的这个xml文件代码里找action path="\/do\/PaAction"这句话,找到这句话之后,通过type="PaAction" 锁定PaAction这个java...

如何使用Spring来管理Struts中的Action
(1)struts.xml中:xml 代码:< constant name="struts.objectFactory" value="spring" \/ (2)struts.properties中:java 代码:struts.objectFactory=spring 即可,如果在Action中有依赖于其它的BEAN,也会被自动注入进来。这时候,Action实例是以prototype方式创建的,SPRING会为每个请求创建一个ACTION的实例。

请问struts构架里建立的Action和ActionForm有什么用啊?
其实质是getXXX和setXXX方法中的XXX要与表单中的参数名称相同,以达到接收参数的目的),同时可以对表单中的数据进行验证。Action用来接收处理请求的,相当于Servlet的功能。Forward用来配置跳转页面,配置后在Action中使用。Struts2.0比起1.X有很多方便之处,学完了1.X可以去看看2.0 ...

相似回答