【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方法中进行处理,例如:

三、效果显示
1.单击“设计”

2.给第一页增加问题

3.选择问题类型

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

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

【Java EE 学习 71 上】【数据采集系统第三天】【增加页面】【增加问题】【编辑页面,编辑问题】的更多相关文章
- 【Java EE 学习 74 上】【数据采集系统第六天】【使用Jfreechart的统计图实现】【Jfreechart的基本使用方法】
之前已经实现了数据的采集,现在已经有了基本的数据,下一步就需要使用这些数据实现统计图的绘制了.这里使用Jfreechart实现这些统计图的绘制.首先看一下Jfreechart的基本用法,只有知道了它的 ...
- 【Java EE 学习 80 上】【WebService】
一.WebService概述 什么是WebService,顾名思义,就是基于Web的服务,它使用Http方式接收和响应外部系统的某种请求,从而实现远程调用.WebService实际上就是依据某些标准, ...
- 【Java EE 学习 25 上】【网上图书商城项目实战】
一.概述 1.使用的jdk版本:1.6 2.java EE版本:1.6 3.指导老师:传智播客 王建 二.小项目已经实现的功能 普通用户: 1.登陆 2.注册 3.购物 4.浏览 管理员用户(全部管理 ...
- 【Java EE 学习 78 上】【数据采集系统第十天】【Service使用Spring缓存模块】
一.需求分析 调查问卷中或许每一个单击动作都会引发大量的数据库访问,特别是在参与调查的过程中,只是单击“上一页”或者“下一页”的按钮就会引发大量的查询,必须对这种问题进行优化才行.使用缓存策略进行查询 ...
- 【Java EE 学习 77 上】【数据采集系统第九天】【通过AOP实现日志管理】【通过Spring石英调度动态生成日志表】【日志分表和查询】
一.需求分析 日志数据在很多行业中都是非常敏感的数据,它们不能删除只能保存和查看,这样日志表就会越来越大,我们不可能永远让它无限制的增长下去,必须采取一种手段将数据分散开来.假设现在整个数据库需要保存 ...
- 【Java EE 学习 76 上】【数据采集系统第八天】【角色授权】【用户授权】【权限的粗粒度控制】【权限的细粒度控制】
一.角色管理 单击导航栏上的"角色管理"超链接,跳转到角色管理界面,在该界面上显示所有角色,并提供角色的增加和删除.修改超链接. 1.增加新角色(角色授权) 流程:单击增加新角色超 ...
- 【Java EE 学习 72 上】【数据采集系统第四天】【增加调查logo】【文件上传】【动态错误页指定】【上传限制】【国际化】
增加logo的技术点:文件上传,国际化 文件上传的功能在struts2中是使用文件上传拦截器完成的. 1.首先需要在页面上添加一个文件上传的超链接. 点击该超链接能够跳转到文件上传页面.我给该表单页面 ...
- 【Java EE 学习 71 下】【数据采集系统第三天】【分析答案实体】【删除问题】【删除页面】【删除调查】【清除调查】【打开/关闭调查】
一.分析答案实体 分析答案实体主要涉及到的还是设计上的问题,技术点几乎是没有的.首先需要确定一下答案的格式才能最终确定答案实体中需要有哪些属性. 答案格式的设计是十分重要的,现设计格式如下: 在表单中 ...
- 【Java EE 学习 75 上】【数据采集系统第七天】【二进制运算实现权限管理】【权限分析和设计】
一.权限计算相关分析 1.如何存储权限 首先说一下权限保存的问题,一个系统中最多有多少权限呢?一个大的系统中可能有成百上千个权限需要管理.怎么保存这么多的权限?首先,我们使用一个数字中的一位保存一种权 ...
随机推荐
- .vue文件里引用单独样式和js文件
style只能引一个,script可以引多个
- MVC重定向-自定义路由篇
public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.Ignore ...
- 基础知识(05) -- Java中的类
Java中的类 1.类的概念 2.类中的封装 3.对象的三大特征 4.对象状态 5.类与类之间的关系 ------------------------------------------------- ...
- vtkTransform实例 1
1. 4*4矩阵类vtkMatrix4x4 接口函数:void SetElement(int i, int j, double value),i行.j列的值为value #ifndef INITIAL ...
- 一张图告诉你,只会HTML还不够!
会了HTML和HTML5语法,你就真的会了HTML吗,来看这张图!是这本<超实用的HTML代码段>入门实例书的导览!熊孩子们,赶紧学习去吧! 如果一半以上的你都不会,必须看这本书,阿里一线 ...
- Python - 类与对象的方法
类与对象的方法
- lua获取时间
更多好的文章就在 blog.haoitsoft.com,请大家多多支持! local getTime = os.date("%c"); 其中的%c可以是以下的一种:(注意大小写) ...
- ubuntu专用
独立显卡处理驱动处理问题: http://blog.csdn.net/liufunan/article/details/52090382 git的教程: http://www.bootcss.com/ ...
- Git的checkout, reset, revert
不管是修改还是新建文件,都必须通过git add把这次修改从工作区加到暂存区: commit只是提交暂存区的修改,还没add到暂存区处于工作区的修改是不会commit的: git checkout ...
- Java 动态代理机制详解
在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的 ...