美文网首页S2SH在线答题
判断答题正确与错误(第八天)

判断答题正确与错误(第八天)

作者: setone | 来源:发表于2017-07-11 16:24 被阅读0次

第八天;
答题嘛,最重要的就是答案的正确与否了

思路:
1.把题号和答案通过ajax传到后台
2.拿到题号后去数据库查询答案,进行对比,进行错误次数记录;然后把数据传达前台

onepage.jsp

这个页面里面要添加一段ajax

    //检验答案
    function checkResult(sid){
        var choiceval = "";
        $("input[name='"+sid+"']").each(function() { 
            if($(this).attr("checked"))
            {
                choiceval=choiceval+$(this).val();
            }
        });
        $.ajax({
            type:"post",//请求方式
            url:"answer/check.action",//请求路径
            data:{//传参
                subjectid:sid,
                choice:choiceval
            },
            success:function(data){
                $("#"+sid).html(data);
            }
            
        });     
    };

struts.xml

对应的配置文件也发生了变化,要添加一段action

<action name="check" class="subjectAction" method="check"/>

SubjectAction.java

一个个来

    /**
     * 答案检测
     * 
     * @throws IOException
     */
    @Autowired
    ErrorsubjectService errorsubjectService;
    String choice;

    Long subjectid;
    public String getChoice() {
        return choice;
    }

    public void setChoice(String choice) {
        this.choice = choice;
    }

    public Long getSubjectid() {
        return subjectid;
    }

    public void setSubjectid(Long subjectid) {
        this.subjectid = subjectid;
    }

    public void check() throws IOException {

        PrintWriter out = ServletActionContext.getResponse().getWriter();
        String outputstr = "";
        boolean result = subjectService.check(subjectid, choice);
        if (result) {
            outputstr = "success";

        } else {
            errorsubjectService.errorsubjectSaveOrUpdate(subjectid);
            outputstr = "error>>正确答案是:"
                    + subjectService.findById(subjectid).getResulter();
        }
        // 强制刷新
        out.write(outputstr);
        out.flush();
        out.close();
    }

SubjectService.java

添加判断答案的代码
    public Subject findById(Long subjectid){
        return subjectDAO.findById(subjectid);
    }
    /**
     * 答案校准
     * 
     * @param subjectid
     * @param choice
     * @return
     */
    public boolean check(Long subjectid, String choice) {
        Subject sub = findById(subjectid);
        if (sub.getResulter().equals(choice)) {
            return true;
        } else {
            return false;
        }
    }

ErrorsubjectService.java

添加如下代码

    Userinfo userinfo = (Userinfo) ServletActionContext.getRequest()
            .getSession().getAttribute("userinfo");
    public void errorsubjectSaveOrUpdate(Long subjectid) {
        Errorsubject errorsubject = new Errorsubject();

        errorsubject.setUserinfo(userinfo);
        
        Subject sb = new Subject();
        sb.setSubjectid(subjectid);
        errorsubject.setSubject(sb);
        long userid = userinfo.getUserid();
        List<Errorsubject> list =  errorsubjectDAO.findByUidSid(userid,subjectid);
        errorsubject.setErrordate(new Date());
        long degree = 1;
        if(list.size() > 0){
            Errorsubject es = (Errorsubject) list.get(0);
            degree = es.getErrordegree();
            degree = degree+1;
            errorsubject.setErrordegree(degree++);
            errorsubject.setErrorid(es.getErrorid());//区分更新与保存的重要信息
            errorsubjectDAO.merge(errorsubject);//更新错误信息
        }else{
            errorsubject.setErrordegree(degree);
            errorsubjectDAO.save(errorsubject);//保存错误信息
        }
    }

ErrorsubjectDAO.java

添加如下代码

    public List<Errorsubject> findByUidSid(Long userid, Long subjectid) {
        String queryString = "from Errorsubject as e where e.userinfo.userid='"+userid+"' and e.subject.subjectid = '"+subjectid+"'";
        return getHibernateTemplate().find(queryString);
    }

相关文章

  • 判断答题正确与错误(第八天)

    第八天;答题嘛,最重要的就是答案的正确与否了 思路:1.把题号和答案通过ajax传到后台2.拿到题号后去数据库查询...

  • 一起考教师

    《综合素质》 答题思路❗❗❗ 1.(总):判断行为正确还是错误 正确:……的做法是科学合理的,符合新课程改革背景下...

  • 教师考编答题技巧

    辨析题答题技巧 辨析题答题三步走: 第一步:先判断。所有的辨析题首先答“正确”或“错误”或“片面”例如上述观点是错...

  • 20161023周日,判断错误,操作正确——是怎么做到的

    1.判断错误,操作正确——是怎么做到的 实际上我认为更正确的说法是:不论判断正确或错误,都能让操作正确。 a)自我...

  • 精准答题的关键

    1正确理解题干的概念 2正确理解题干的判断 3正确遵循答题的规范

  • 全等三角形课本回顾200521

    一、命题与定理 1、命题 像这样可以判断正确或错误的陈述句叫做命题,正确的命题称为真命题,错误的命题称为假命题。 ...

  • 成功的关键步骤,改善,提升,进步

    成功源于正确的判断,正确的判断,源于过去的经验,而过去的经验又源于错误的判断,只有步骤的正确,结果才一定会正确。 ...

  • 梁宁《增长思维30讲》发刊词~笔记与启发

    梁宁《增长思维30讲》发刊词~笔记与启发 启发点摘录: 1、增长就是作判断的能力。判断正确,就增长,判断错误,就损...

  • 43 awk (四)

    awk 数组 错误的判断方法 正确的方法 删除键

  • 心算王者

    心算皇者是一款答题小游戏,游戏的规则是限时选择数学题中正确的答案,选择正确会进行下一题,错误则结束游戏。答题花费时...

网友评论

    本文标题:判断答题正确与错误(第八天)

    本文链接:https://www.haomeiwen.com/subject/nprmhxtx.html