关于网友提出的“如何在一个方法内将对象存入list中,放入session,再次执行该方法如何将新的对象继续存入?”问题疑问,本网通过在网上对“如何在一个方法内将对象存入list中,放入session,再次执行该方法如何将新的对象继续存入?”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题:如何在一个方法内将对象存入list中,放入session,再次执行该方法如何将新的对象继续存入?
描述: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 questionNaireQuestionslist = new ArrayList();
QuestionNaireQuestion questionNaireQuestion = new QuestionNaireQuestion();
//......
questionNaireQuestionslist.add(questionNaireQuestion);
//将List对象questionNaireQuestionslist存入session中
request.getSession().setAttribute("questionNaireQuestionslist", questionNaireQuestionslist);
//将questionNaireQuestion对象存入session中
request.getSession().setAttribute("questionNaireQuestion", questionNaireQuestion);
解决方案1:我建议你加个判断 public String saveQuestion(HttpServletRequest request) {
List questionNaireQuestionslist = (List())request.getSession().getAttribute("questionNaireQuestionslist");
QuestionNaireQuestion questionNaireQuestion = new QuestionNaireQuestion();
//......
if (questi {
questionNaireQuestionslist = new ArrayList();
}
questionNaireQuestionslist.add(questionNaireQuestion);
//将List对象questionNaireQuestionslist存入session中
request.getSession().setAttribute("questionNaireQuestionslist", questionNaireQuestionslist);
//将questionNaireQuestion对象存入session中
request.getSession().setAttribute("questionNaireQuestion", questionNaireQuestion);
}
解决方案2:List questionNaireQuestionslist = new ArrayList();
将list作为类的全局变量。如果是所有人共用一个还需要static
解决方案3:你原来在方法中每次调用方法都会新建一个list。所以每一次元素都是当次的元素。把list作为类的全局变量,list就可以增加了
以上介绍了“如何在一个方法内将对象存入list中,放入session,再次执行该方法如何将新的对象继续存入?”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/wd/631948.html