1.在执行方法SavaQuestion,定义一个list对象 questionNaireQuestionslist
2.再将questionNaireQuestion对象放入这个list对象questionNaireQuestionslist中
3.将list对象questionNaireQuestionslist保存入session中,将questionNaireQuestion保存入session中
4.如何再次执行这个方法SavaQuestion,将新的questionNaireQuesion对象存入list中
5.我每次将新的questionNaireQuesion对象存入list中时都会覆盖原有的,list对象questionNaireQuestionslist永远只有一个元素
public String saveQuestion(HttpServletRequest request) {
List<QuestionNaireQuestion> questionNaireQuestionslist = new ArrayList<QuestionNaireQuestion>();
QuestionNaireQuestion questionNaireQuestion = new QuestionNaireQuestion();
//......
questionNaireQuestionslist.add(questionNaireQuestion);
//将List对象questionNaireQuestionslist存入session中
request.getSession().setAttribute("questionNaireQuestionslist", questionNaireQuestionslist);
//将questionNaireQuestion对象存入session中
request.getSession().setAttribute("questionNaireQuestion", questionNaireQuestion);
你原来在方法中每次调用方法都会新建一个list。所以每一次元素都是当次的元素。把list作为类的全局变量,list就可以增加了
List questionNaireQuestionslist = new ArrayList();
将list作为类的全局变量。如果是所有人共用一个还需要static
我建议你加个判断 public String saveQuestion(HttpServletRequest request) {
List questionNaireQuestionslist = (List())request.getSession().getAttribute("questionNaireQuestionslist");
QuestionNaireQuestion questionNaireQuestion = new QuestionNaireQuestion();
//......
if (questionNaireQuestionslist==null) {
questionNaireQuestionslist = new ArrayList();
}
questionNaireQuestionslist.add(questionNaireQuestion);
//将List对象questionNaireQuestionslist存入session中
request.getSession().setAttribute("questionNaireQuestionslist", questionNaireQuestionslist);
//将questionNaireQuestion对象存入session中
request.getSession().setAttribute("questionNaireQuestion", questionNaireQuestion);
}