Result学习笔记(二) - 动态结果集
动态结果 一定不要忘了为动态结果的保存值设置set get方法
result部分:
结果可以由我们动态确定;
在struct.xml可以用<result>${r}</result>来去里面的值;
第一部分:代码
//前端 <% String context = request.getContextPath(); %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030" /> <title>Insert title here</title> </head> <body> <ol> <li><a href="user/user?type=1">返回success</a></li> <li><a href="user/user?type=2">返回error</a></li> </ol> </body> </html>
//web.xml <struts> <constant name="struts.devMode" value="true" /> <package name="user" namespace="/user" extends="struts-default"> <action name="user" class="com.struts2.user.action.UserAction"> <result>${r}</result> </action> </package> </struts>
//类包 package com.struts2.user.action; import com.opensymphony.xwork2.ActionSupport; public class UserAction extends ActionSupport { private int type; private String r; public String getR() { return r; } public void setR(String r) { this.r = r; } public int getType() { return type; } public void setType(int type) { this.type = type; } @Override public String execute() throws Exception { if(type == 1) r="/user_success.jsp"; else if (type == 2) r="/user_error.jsp"; return "success"; } }
第二部分:配置分析
web.xml:result部分:
<result>${r}</result>类包分析:
private String r; public String execute() throws Exception { if(type == 1) r="/user_success.jsp"; else if (type == 2) r="/user_error.jsp"; return "success"; }类包中有成员变量,是根据其他条件动态确定值jsp,在配置文件${r}表示可以在值栈里取值。
结论:
可以用一个属性保存一个结果;结果可以由我们动态确定;
在struct.xml可以用<result>${r}</result>来去里面的值;