struts2 和 ajax 用到了同一个action。 30

struts2和ajax用到了同一个action,这样一个请求是需要跳转(struts),而另外一个请求是不需要跳转的(ajax),那我在struts.xml中配置的时候... struts2 和 ajax 用到了同一个action,这样一个请求是需要跳转(struts),而另外一个请求是不需要跳转的(ajax),那我在struts.xml 中配置的时候,可不可以只配置一个action,这个action集成了 struts2 和 ajax 的处理请求 。我试过了,没有通过,不晓得是jar的原因,还是其他的原因,谢谢了。【当然配置两个包,而一个action就需要配置两次,当然是可以的,我想知配置一个action,但是却有处理ajax请求和struts请求的功能】大牛们,给力呀。高分。 展开
 我来答
568145421
2012-09-01 · 知道合伙人软件行家
568145421
知道合伙人软件行家
采纳数:1353 获赞数:6755

向TA提问 私信TA
展开全部
你好,既然它们逻辑上有相似,而业务流程不同,那么你这样的设计就是不合理的,说明你重构的不好,你可以将相同的逻辑处理抽象到一个方法中,然后配置不同的action,调用那个方法之后,加上不同的业务处理。否则你的代码可读性不好,后期维护起来也困难。
更多追问追答
追问
师兄 ,我现在才大二,你能说的详细点吗?我意思是 我只用一个action 来配置 处理 ajax请求和 struts的请求。。。“你可以将相同的逻辑处理抽象到一个方法中,然后配置不同的action,调用那个方法之后,加上不同的业务处理” 这个应该是配置了两个actin了吧。还请赐教。谢谢。
追答
你好,你struts学完后应该知道,可以直接调用一个action中的不同方法。你写两个不一样的方法,每个方法封装各自的业务,就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
味洋扛590
2012-09-01 · TA获得超过1647个赞
知道小有建树答主
回答量:1640
采纳率:100%
帮助的人:809万
展开全部
这样是可以的,比如登陆的时候,登录成功进入另一个jsp,不成功,把信息返回到登录界面.
在package里面的extends="json-default",json-default也继承自struts-default,这样result的type属性就可以直接写json了.
进入另一个jsp页面的,type属性可不写,默认是请求转发,也可换成重定向等,但是type属性换成json,那就表示不能返回一个视图了,它会把action中有get属性的成员变量封装起来返回给原来的视图.所以type="json" 并且extends="json-default"就行了,注意导入strus2-json的jar包
追问
这个我都试过了,好像不行。而且如果action 里面集成了处理ajax请求的话,当我们再提交 struts请求到同一个action的话,该action是不访问不到 ServletAPI 中传递的数据的。所以这也是一个特别急人的问题。无奈,我在struts.xml 中定义了两个action处理不同的逻辑请求。但是心中有疑惑,总觉得一个action也可以。但是就是没有找到办法。。师兄,你该action无法访问ServletAPI 里的数据,怎么看啊 ?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
忧郁枫梦
2012-09-13
知道答主
回答量:42
采纳率:100%
帮助的人:6.2万
展开全部
sturts2可以在struts.xml配置result转页面,ajax只能在前台配置转页面!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1034297177
2012-09-14
知道答主
回答量:5
采纳率:0%
帮助的人:2.8万
展开全部
按理说是没问题的啊,只是返回内型不一样吧?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式