【问题标题】:temporary variable save in jspjsp中的临时变量保存
【发布时间】:2017-02-13 10:13:29
【问题描述】:

我已经创建了测验项目。单击选项单选按钮时,我想保存显示用户答案列表。最后考试我想用ajax插入mysql所有答案列表。

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

请告诉我如何在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>

【问题讨论】:

    标签: ajax jsp


    【解决方案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。当然,你可以添加一个检查来防止异常。

    【讨论】:

      猜你喜欢
      • 2014-09-02
      • 1970-01-01
      • 2016-09-30
      • 1970-01-01
      • 2016-04-11
      • 2016-06-18
      • 2017-04-27
      • 2017-06-05
      • 1970-01-01
      相关资源
      最近更新 更多