临时变量保存在jsp中

时间:2017-02-13 10:13:30

标签: ajax jsp

我创建了测验项目。我想在单击选项单选按钮时保存show user answerlist。在最后的考试中我想用ajax插入mysql所有的答案列表。

在解析答案列表中我写了这样的代码。但是在每个新页面中,单击选项previos answer表显示为null。

请告诉我如何临时保存jsp中的所有答案然后插入mysql:

<html>
<head>
    <%        Logger log =   Logger.getLogger("Test");%>

    <% Long qnum =     (Long) session.getAttribute("qnumer"); %>
    <% String answer = (String) session.getAttribute("answer");%>
    <%log.info(qnum + answer);%>
    <% String [] answerqlist = new String[6] ; %>

     <%switch (Integer.parseInt(String.valueOf(qnum))){
            case  1:
                String a1 = answer;
                answerqlist[0]=a1;
                break;
            case  2:
                String a2 = answer;
                answerqlist[1]=a2;
                break;
            case  3:
                String a3 = answer;
                answerqlist[2]=a3;
                break;
            case  4:
                String a4 = answer;
                answerqlist[3]=a4;
                break;
            case  5:
                String a5 = answer;
                answerqlist[4]=a5;
                break;
            case  6:
                String a6 = answer;
                answerqlist[5]=a6;
                break;
    }%>
</head>
<body>

<table   cellspacing="0" width="100%"  style="border: solid 1px;" >
    <thead>
    <tr>
        <th>1</th>
        <th>2</th>
        <th>3</th>
        <th>4</th>
        <th>5</th>
        <th>6</th>
    </tr>
    </thead>
    <tbody>
    <tr align="center">
        <td><%=answerqlist[0]%></td>
        <td><%=answerqlist[1]%></td>
        <td><%=answerqlist[2]%></td>
        <td><%=answerqlist[3]%></td>
        <td><%=answerqlist[4]%></td>
        <td><%=answerqlist[5]%></td>
    </tr>
    </tbody>
</table>
</body>
</html>

1 个答案:

答案 0 :(得分:1)

您将从会议中获得:

<% Long qnum =     (Long) session.getAttribute("qnumer"); %>
<% String answer = (String) session.getAttribute("answer");%>

但我没有看到你在会话中设置这些值的地方。

对于数组answerqlist也一样,你每个页面都在构建一个新的,你应该将它保存到会话中(并加载它)。

PS:你真的要看看How to avoid Java code in JSP files?

PS 2:开关不是必需的,因为这可以减少为:

int index = Integer.parseInt(String.valueOf(qnum));
answerqlist[index - 1] = answer;

你一遍又一遍地做同样的事情,但索引取决于qnum。当然,您可以添加一个检查来防止异常。