论坛首页 Java企业应用论坛

Struts框架下控制跳转问题[更新]

浏览 12873 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-01-10  
hurry07 写道
esprit 写道
我的做法是直接new ActionForward出来,然后进行跳转,没有在配置文件里配置
楼上意思是用jsp标准的转向来解决这个问题了?

是new ActionForward对象
ActionForward actionForward = new ActionForward();
根据数据库中读取的内容不通设置不通的跳转Path,actionForward.setPath()
最后return actionForward;
0 请登录后投票
   发表时间:2007-01-10  
gl2001wl 写道
hurry07 写道
esprit 写道
我的做法是直接new ActionForward出来,然后进行跳转,没有在配置文件里配置
楼上意思是用jsp标准的转向来解决这个问题了?
既然用了struts,又不在配置文件里配置路径,意义何在?

这里需要动态选择跳转的路径,这只是我的一个解决方法
大家有好的解决方法,都可以提出来探讨一下。
0 请登录后投票
   发表时间:2007-01-10  
恩恩  原来还能new的
0 请登录后投票
   发表时间:2007-01-10  
对一些CRUD的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>
0 请登录后投票
   发表时间:2007-01-11  
也就是说 是这样 
return new ActionForward("a.jsp");
or
return new ActionForward("a.jsp",true);
0 请登录后投票
   发表时间:2007-01-11  
bingbing 写道
return (mapping.findForward("success"));

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

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

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

根据判断结果return不同的 mapping

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

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

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

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

麻烦了:)


ruby on ralis 1.2

静态语言也可以模仿但很少看人用到

lighter 写道
对一些CRUD的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>

今天看到一个。。。这个方法可行?
0 请登录后投票
   发表时间:2007-01-11  
return new ActionForward("路径");
0 请登录后投票
   发表时间:2007-01-11  
抛出异常的爱 写道
bingbing 写道
return (mapping.findForward("success"));

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

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

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

根据判断结果return不同的 mapping

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

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

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

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

麻烦了:)


ruby on ralis 1.2

静态语言也可以模仿但很少看人用到

lighter 写道
对一些CRUD的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就是用这种方法的.
0 请登录后投票
   发表时间:2007-01-11  
但是我认为"路径"还是应该在xml中的forward进行配置。
struts将页面集中在xml中管理绝对不是不重要的作用,因为当页面非常多的时候,你再去代码中寻找和修改一个页面的连接实在是一件非常痛苦的事情。
至于lz所说的:
根据判断结果return不同的 mapping

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

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

这就是struts的特点所决定的。虽然烦琐,但是却将页面集中管理,所谓鱼与熊掌不可兼得。
0 请登录后投票
   发表时间:2007-01-11  
只要跳转页面的目录控制的严格  要找那些页面的文件的时候 根本就不需要去看xml文件

另外如果真要找这个页面  既然知道是这个action跳转的 去看这个class难道会比xml慢很多么

这个所谓的什么缺点  和 那个烦琐的添加比起来 到底应该取舍哪个呢 

难道一定要死在框架里么  他开源的作用何在
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics