【Java EE 学习 71 上】【数据采集系统第三天】【增加页面】【增加问题】【编辑页面,编辑问题】

增加页面和编辑页面、增加问题和编辑问题的页面使用的都是相同的页面,最后调用的方法是saveOrUpdate方法,所以只说一个就可以了。

一、增加页面

  比较简单,略。流程如下:

  单击“增加页”超链接->Action转发到增加页的jsp页面->填写表单并提交->PageAction保存页面到数据库->重定向到SurveyAction_designSurvey.action

二、增加问题

  增加问题是比较棘手的,因为有九种类型的问题,是不是需要针对这九种类型的问题设计九种类型的页面呢?

  除了设计问题的页面不相同之外其余部分都是相同的。流程如下:

  单击“增加问题”超链接->Action转发到选择问题类型的界面->选择问题类型并提交->QuestionAction判断问题类型并转发到指定的设计问题的页面->填写设计问题的表单->提交给QuestionAction保存,QuestionAction调用相关方法保存问题到数据库,最后重定向到SurveyAction.designSurveyAction.action显示出新增加的问题。

  需要注意的两个问题有:

  1.转发到设计问题的页面,有九种类型的问题,使用问题的数组坐标来判断是哪一种类型的问题,使用五种类型的页面来显示九种类型问题的设计方案:

 1       <result name="0">/question/noneMatrixWithOtherQuestionDesign.jsp</result>
<result name="1">/question/noneMatrixWithOtherQuestionDesign.jsp</result>
<result name="2">/question/noneMatrixWithOtherQuestionDesign.jsp</result>
<result name="3">/question/noneMatrixWithOtherQuestionDesign.jsp</result> <result name="4">/question/noneMatrixSelectQuestionDesign.jsp</result>
<result name="5">/question/noneMatrixTextQuestionDesign.jsp</result> <result name="6">/question/matrixNormalQuestionDesign.jsp</result>
<result name="7">/question/matrixNormalQuestionDesign.jsp</result>
<result name="8">/question/matrixSelectQuestionDesign.jsp</result>

  设计页面的显示略。关键是怎么针对这九种类型的问题进行保存。

  2.怎么保存这九种类型的问题

  不要想的太复杂了,需要提供的字段都在设计页面上给出了,所以直接在Action中保存model对象就可以了。

 //保存Question对象的方法
public String saveQuestion() throws Exception{
Page page=pageService.getPage(pageId);
this.model.setPage(page);
this.questionService.saveQuestion(this.model);
return "toDesignSurveyPageAction";
}

  但是需要注意的是答案的拆分,由于前端页面中传过来的是字符串,所以需要将字符串进行拆分处理成字符数组,这里在set方法中进行处理,例如:

  【Java EE 学习 71 上】【数据采集系统第三天】【增加页面】【增加问题】【编辑页面,编辑问题】

三、效果显示

  1.单击“设计”

【Java EE 学习 71 上】【数据采集系统第三天】【增加页面】【增加问题】【编辑页面,编辑问题】

  2.给第一页增加问题

【Java EE 学习 71 上】【数据采集系统第三天】【增加页面】【增加问题】【编辑页面,编辑问题】

  3.选择问题类型

【Java EE 学习 71 上】【数据采集系统第三天】【增加页面】【增加问题】【编辑页面,编辑问题】

  4.选择比价复杂的矩阵式下拉列表

【Java EE 学习 71 上】【数据采集系统第三天】【增加页面】【增加问题】【编辑页面,编辑问题】

  5.单击确定之后查看设计调查页面已经新添加了该问题

【Java EE 学习 71 上】【数据采集系统第三天】【增加页面】【增加问题】【编辑页面,编辑问题】

上一篇:ZooKeeper动态增加Server(动态增加节点)的研究(待实践)


下一篇:.Net的内置对象之一 Request