用语言叙述JavaEE框架Struts2的运行流程,面试问的该怎么回答呢?我学过但是只是记得大概的,给我详细说说

 我来答
pieryon
2016-07-12 · 知道合伙人数码行家
pieryon
知道合伙人数码行家
采纳数:14411 获赞数:166856
获取软件设计师高级职称 万达金融最佳创新奖

向TA提问 私信TA
展开全部
当用户提交的时候,请求的URL为:/helloworld/helloworldAction.action请求被Tomcat服务器接收到,Tomcat服务器会根据请求URL中的web上下文,也就是/helloworld,来选择处理这个请求的Web应用,那就是由helloworld这个web工程来处理这个请求;
(3)Web服务器会读取helloworld这个工程的web.xml,在web.xml中进行配置,发现扩展名为.action的请求,由struts2这个过滤器来进行处理,根据Filter的配置,找到实际的类为FilterDispatcher。
(4)Web容器会根据获取的FilterDispatcher这个类的实例,然后回调doFilter()方法进行真正的处理,FilterDispatcher作为前端控制器,是整个Struts的调度中心;
注:FilterDispatcher是任何一个Struts2应用都需要配置的,一般出现在过滤器的最后;如果在FilterDispatcher钱出现了如SiteMesh这种特殊的过滤器,还必须在SiteMesh前边应用Struts2的ActionContextCleanUp过滤器。
由于这个案例中没有SiteMesh这种特殊的过滤器,所以只需要用filterDispatcher就可以,这就相当于前进到Struts2构架图的第一步:
(5)FilterDispatcher讲请求转发给ActionMapper。ActionMapper负责识别当前的请求是否需要Struts2做出处理。
(6)ActionMapper告诉FilterDispatcher,需要处理这个请求,FilterDispatcher会停止过滤器链以后的部分,所以通常情况下:FilterDispatcher应该出现在过滤器联链的最后。然后建立一个ActionProxy对象,这个对象作为Action与xwork之间的中间层,会代理Action的运行过程。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式