读书人

Struts框架上控制跳转有关问题[更新]

发布时间: 2012-11-04 10:42:41 作者: rapoo

Struts框架下控制跳转问题[更新]
return (mapping.findForward("success"));

我们都是通过上面的方法在Action中跳转,现在我的问题是"

我从数据库读出来一个内容,根据内容条到不同的页面,内容可以是一个URL地址

我原来的办法是经过判断,对应Struts-config.xml中有N个forward

根据判断结果return不同的 mapping

这种做法的缺点显而易见:

可能跳转的页面如果增加 需要增加代码量高,配制文件也多........

我想问问有没有好一点的方法实现此功能,

比如可能动态的更改XML配置? 或者SUN公司或者APACHE提供了相应的类相应的方法什么的

麻烦了:)


解决方案整理(因为各位都帮忙,都出力了,名字写不全就不好了,故就不写名字了,衷心谢谢大家):

第一个方案:在struts里都跳到同一个页面 然后把数据库中的URL传到那个页面
让那个页面立刻跳到URL页面

第二个方案:return new ActionForward("a.jsp");
or
return new ActionForward("a.jsp",true);

还有2个没看懂的方案,呵呵,再研究研究
ActionForward actionForward = new ActionForward();根据数据库中读取的内容不通设置不通的跳转Path,actionForward.setPath()最后return actionForward; <forward name="list" path="/WEB-INF/pages/admin/{1}List.jsp"/>
<forward name="edit" path="/WEB-INF/pages/admin/{1}Form.jsp"/>
<forward name="success" path="/admin/{1}.do?method=list" redirect="true"/>
action>return new ActionForward("a.jsp");orreturn new ActionForward("a.jsp",true);<action path="/admin/*" name="{1}Form" parameter="method" scope="request" validate="false"> <forward name="list" path="/WEB-INF/pages/admin/{1}List.jsp"/> <forward name="edit" path="/WEB-INF/pages/admin/{1}Form.jsp"/> <forward name="success" path="/admin/{1}.do?method=list" redirect="true"/>action>
今天看到一个。。。这个方法可行?<action path="/admin/*" name="{1}Form" parameter="method" scope="request" validate="false"> <forward name="list" path="/WEB-INF/pages/admin/{1}List.jsp"/> <forward name="edit" path="/WEB-INF/pages/admin/{1}Form.jsp"/> <forward name="success" path="/admin/{1}.do?method=list" redirect="true"/>action>
今天看到一个。。。这个方法可行?

springside就是用这种方法的.但是在转发前,要做一件事情,从数据库里得到一个将要转发的路径信息
在*.jsp中这样处理:
<c:redirect url="*.jsp or action.do?...."/>

这2周一直做项目需求,忙的要死,看到这么多人帮我,谢谢了

实现了2种解决方法,嘿嘿,再次谢谢

但是上面的不会用哈:) 嘿嘿太笨了

读书人网 >软件架构设计

热点推荐