package com.wjs.servlet;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.DateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.commons.lang3.StringUtils;
import com.wjs.dao.StuAnswersDao;
import com.wjs.dao.TotalDao;
import com.wjs.util.JDBCUtil;
/**
* Servlet implementation class TeacherServlet
*/
@WebServlet("/te")
public class StuAnswersServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@SuppressWarnings("resource")
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("utf-8");
resp.setContentType("text/html;charset=utf-8");
HttpSession session = req.getSession();
//从前台页面获取学生信息和答案
Date date=new Date();
DateFormat df=DateFormat.getDateTimeInstance();
String dateTime=df.format(date);
String dept=req.getParameter("dept");
String grade = req.getParameter("grade");
String clazz = req.getParameter("clazz");
String classno = req.getParameter("classno");
String sname = req.getParameter("sname");
String sex = req.getParameter("sex");
String sid = req.getParameter("sid");
String exes[]=new String[50];
for(int i=0;i<exes.length;i++) {
exes[i]=req.getParameter("exe"+i);
}
//从页面获取的学生答案计算成绩
int score=0;
String corrAnswers[]=new StuAnswersDao().readCorrAnswers();
for(int i=0;i<exes.length;i++) {
if(exes[i].equals(corrAnswers[i])) {
score=score+2;
}
}
Connection conn = null;
PreparedStatement pst = null;
ResultSet rs = null;
try {
conn = JDBCUtil.getConn();
String checkSql = "SELECT * FROM tb_answers WHERE stu_no=?";
pst = conn.prepareStatement(checkSql);
pst.setString(1, sid);
rs = pst.executeQuery();
//学生如果已经作答
if (rs.next()) {
int scored=new StuAnswersDao().readStuScore(sid);
//分数>=80提示合格,无需再次作答
if(scored>=80) {
String msg="<script type='text/javascript' language='javascript'>alert('您已合格!得分:"
+scored+"分');window.document.location.href='/tespjx/exes.jsp';</script> ";
resp.getWriter().write(msg);
}
//分数<80将学生答案和分数存放数据库
else {
String sqlUpdate = "UPDATE tb_answers SET stu_answers=?,stu_score=?,sub_time=? WHERE stu_no=?";
pst = conn.prepareStatement(sqlUpdate);
pst.setString(1, StringUtils.join(exes));
pst.setInt(2, score);
pst.setString(3, dateTime);
pst.setString(4, sid);
int flag = pst.executeUpdate();
if(flag>0){
if(score<80) {
String scoreGrade="不合格";
String msg="<script type='text/javascript' language='javascript'>alert('提交成功!成绩:"
+score+"分,"+scoreGrade+"。点击【确定】返回作答。');"
+"history.go(-1);</script> ";
resp.getWriter().write(msg);
}
else {
String sqlUpdateCert = "UPDATE tb_answers SET cert=? WHERE stu_no=?";
pst = conn.prepareStatement(sqlUpdateCert);
pst.setString(1, "ZK20201201"+(10001+new TotalDao().totalAll())+"S");
pst.setString(2, sid);
pst.executeUpdate();
req.setAttribute("no", sid);
req.setAttribute("name", sname);
req.setAttribute("score", score);
req.setAttribute("scoreGrade", ",合格!");
req.getRequestDispatcher("ok.jsp").forward(req, resp);
}
}
}
}
//学生首次作答
else {
String sql = "SELECT * FROM tb_answers";
pst = conn.prepareStatement(sql);
rs = pst.executeQuery();
//提交人数
int count = 1;
while (rs.next()) {
++count;
}
if (count > 50000) {
String full = "<script type='text/javascript' language='javascript'>\r\n"
+ "alert('提交已满,谢谢您的支持!');\r\n"
+ "window.document.location.href='/tespjx/exes.jsp';\r\n"
+ "</script>";
resp.getWriter().write(full);
}
else {
String cert="ZK20201201"+(10001+new TotalDao().totalAll())+"S";
req.setAttribute("no", sid);
req.setAttribute("name", sname);
req.setAttribute("score", score);
req.setAttribute("scoreGrade",",合格!");
String insertSql = "INSERT INTO tb_answers(stu_dept,stu_grade,stu_class,stu_classno,stu_name,stu_sex,stu_no,stu_answers,stu_score,sub_time)"
+ "VALUES(?,?,?,?,?,?,?,?,?,?)";
pst = conn.prepareStatement(insertSql);
pst.setString(1, dept);
pst.setString(2, grade);
pst.setString(3, clazz);
pst.setString(4, classno);
pst.setString(5, sname);
pst.setString(6, sex);
pst.setString(7, sid);
pst.setString(8, StringUtils.join(exes));
pst.setInt(9, score);
pst.setString(10, dateTime);
//pst.setString(11, cert);
int flag = 0;
try {
flag = pst.executeUpdate();
if (flag > 0) {
System.out.print("【"+dept+"】作答人数+1,该院系共计:"+new TotalDao().total(dept));
System.out.println(",总计:"+new TotalDao().totalAll());
}
} catch (Exception e) {
e.printStackTrace();
}
finally {
if(score>=80) {
if (flag > 0) {
String sqlUpdateCert = "UPDATE tb_answers SET cert=? WHERE stu_no=?";
pst = conn.prepareStatement(sqlUpdateCert);
pst.setString(1, cert);
pst.setString(2, sid);
pst.executeUpdate();
req.getRequestDispatcher("ok.jsp").forward(req, resp);
}
}
else {
//如果分数小于于80分,返回作答
String scoreGrade="不合格";
String msg="<script type='text/javascript' language='javascript'>alert('提交成功!成绩:"
+score+"分,"+scoreGrade+"。点击【确定】返回作答。');"
+"history.go(-1);</script> ";
resp.getWriter().write(msg);
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
JDBCUtil.close(rs, pst, conn);
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
基于Java web的实验室问卷调查系统(源码+数据库).zip
![preview](https://csdnimg.cn/release/downloadcmsfe/public/img/white-bg.ca8570fa.png)
共58个文件
jsp:13个
java:10个
class:10个
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 90 浏览量
2023-08-24
23:06:22
上传
评论
收藏 2.96MB ZIP 举报
温馨提示
使用说明:将源码导入Java ee工具,导入mysql数据库脚本,修改数据库连接语句,调试运行。界面美观,操作简便
资源推荐
资源详情
资源评论
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
收起资源包目录
![package](https://csdnimg.cn/release/downloadcmsfe/public/img/package.f3fc750b.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/JAR.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/JAR.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/JAR.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/JPG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/JPG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/JPG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
共 58 条
- 1
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/e473673e23484abfafca58fbb5eb9dd1_qq_61141142.jpg!1)
等天晴i
- 粉丝: 5273
- 资源: 10万+
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
- FLYMCU串口下载软件
- 基于stm32的PWM呼吸灯
- VBA正则提取字符串(Evalue计算(1打+2批-5瓶+6打+7车)).xlsm
- IMG_20240618_233326.jpg
- 小程序版基于人工智能的卷积网络训练识别书法字体分类-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版CNN图像分类识别面食分类-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版基于深度学习识别厨余垃圾-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版基于卷积神经网络识别季节性水果分类-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版基于卷积神经网络识别食物类别-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版基于深度学习识别4种水果-不含数据集图片-含逐行注释和说明文档.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)