sumsunsum 发表于 2013-1-26 14:29:32

structs2 使用List批量传递数据问题

在做毕业设计时遇到批量传递数据问题,例如批量传递填空题,选择题的值,在这里记录一下:
首先新建Form表单;
package com.actionForm;public class QuestionForm {private int questionID;         //问题IDprivate String questionContent; //问题的题干private String keyA;             //答案Aprivate String keyB;            //答案Bprivate String keyC;            //答案Cprivate String keyD;          //答案Dprivate String answer;         //正确答案private int examID;            //考试试卷编号      生成get=、set方法.....

然后新建Action类
public class SubmintAnswersAction extends ActionSupport {private List<QuestionForm> blankQuestions;      public void setBlankQuestions(List<QuestionForm> blankQuestions) {this.blankQuestions = blankQuestions;}                public List<QuestionForm> getBlankQuestions() {return blankQuestions;}}

jsp页面中引用;
<s:iterator value="#request.blankQuestions" status="status" > <tr >    <td width="9%" height="31"><s:hidden name="%{'blankQuestions['+#status.index+'].questionID'}" > </s:hidden><s:property value="#status.index+1"></s:property>)</span>:</td>    <td width="38%"><<s:property value="questionContent" /></td>    <td width="3%"></td>    <td width="50%">      <s:textfield name="%{'blankQuestions['+#status.index+'].answer'}" >      </s:textfield>   </td></tr></s:iterator>

其中Jsp中引用的blankQuestions必须要与Action类中定义的List对象相同;


然后需要建一个资源文件,其作用是告诉框架在处理该 blankQuestions对象时,知道其是什么样的格式的;资源文件的名字为:StudentExaminationManagementAction-conversion.properties,且该文件要与使用该对象的action类必须要放在同一个文件夹下,例如在这里就必须要与 SubmintAnswersAction放在一个文件夹下;在该资源文件中有两个属性值
name= Element_blankQuestions value=form所在的包名;在这里要注意name 属性值必须要以"Element_"开头,后面跟着的是"blankQuestions"必须与自己Action中定义的List<>对象名字相同;
页: [1]
查看完整版本: structs2 使用List批量传递数据问题