直接在Action中返回forward不好么

如果在配置文件中写Action执行完的跳转的路径,那么在编写Action Java代码的时候还需要切换至配置文件才能知道action转向那个页面,直接写在Action中不好么?
依照这种并且结合struts1,struts2的零配置,已经在多个项目中应用,也没发现问题


struts1中我的做法是
	public ActionForward edit(ActionMapping mapping, ActionForm form, HttpServletRequest request,
			HttpServletResponse response) {
	         //......
		return new ActionForward("/demo/Blog/edit.jsp");
	}

struts1中自己另外做了扩展,可以将action的name作为formBean的配置,整个项目的struts-config配置只有下面这么一段话,path举例/admin/User/delete.do
	<action-mappings>
		<action path="/*/*/*"
			type="com.kingsoft.{1}.web.action.{2}Action"
			name="com.kingsoft.{1}.web.form.{2}Form" scope="request"
			validate="false" parameter="{3}" attribute="{2}Form">
		</action>
	</action-mappings>




struts2中自己另外做了扩展,实现forward的做法是
	/**进入更新页面*/
	public String edit() {
		blog = (Blog)blogManager.getById(id);
		return "/demo/Blog/edit.jsp";
	}


struts2中实现redirect的做法是,前面增加了一个"!"号
	/**保存更新*/
	public String update() {
		blogManager.update(this.blog);
		return "!/demo/Blog/list.action";
	}


struts2增加了direct的返回类型,struts.xml配置也只有一段话
    <package name="default" namespace="/demo" extends="custom-default">
        <action name="*/*" method="{2}" class="com.kingsoft.demo.action.{1}Action">
           <result name="*" type="direct">通过Action直接返回</result>
        </action>		
    </package>


你可能感兴趣的:(spring,xml,jsp,struts,Blog)