session传值问题

赵小宾 发布于 2013/08/04 19:25
阅读 1K+
收藏 0
几个页面,AddSurve.servlet->prepare.jsp->AddQuestion.jsp->AddQuestion.servlet->ShowQueByPage.jsp
我在AddSurve.servlet设置一个session.setAttitude(),

HttpSession Session=request.getSession(true);
Session.setAttribute("sID", survey.getS_id());

为什么在ShowQueByPage.jsp里使用是为空呢?如下:
session.getAttribute("SID");或者

Enumeration e = session.getAttributeNames();
while (e.hasMoreElements())
{
    String name = e.nextElement().toString();
    Object value = request.getAttribute(name);
    System.out.println("<b>" + name + "</b> = " + value + "<br>\n");
}

加载中
0
悟方向
悟方向

第一个是因为变量名不一致导致的 一个是sID 一个是SID导致的 变量名是区分大小导致的

第二个是因为你从session中取到名字(session.getAttributeNames())后,又从request中取值导致的( request.getAttribute(name) ),request和session不是一会事哦

0
赵小宾
赵小宾

引用来自“享开发”的答案

第一个是因为变量名不一致导致的 一个是sID 一个是SID导致的 变量名是区分大小导致的

第二个是因为你从session中取到名字(session.getAttributeNames())后,又从request中取值导致的( request.getAttribute(name) ),request和session不是一会事哦

谢谢你回答!其实我的程序里没写错,在这里写错了,都是sID。恩!我还想请教一个问题:想要用hibernate存储数据,三个表,Survey(s_id)、Questions(q_id)和AnswerSheer(survey_id,questions_id),Survey和Questions是多对多的关系,AnswerSheet是中间表,当我存储一个Survey和一个Questions之后,想吧它们存进中间表并关联起来,怎么办?还有,想查询中间表的信息String  hql  =   "from AnswerSheet as a where a.survey_id="+sID ;出错:could not resolve property: Survey of: com.bean.AnswerSheet [from com.bean.AnswerSheet as a where a.Survey.s_id=24]

赵小宾
赵小宾
又写错了!could not resolve property: survey_id of: com.bean.AnswerSheet [from com.bean.AnswerSheet as a where a.survey_id=24] 上边写错的我也试了,啊好像也不对?
返回顶部
顶部