exam_paperdao.java

来自「可以实现在线考试」· Java 代码 · 共 167 行

JAVA
167
字号
package business;

import java.sql.*;
import java.util.ArrayList;

import po.GradePO;
import po.QuestionPO;
import vo.Exam_sessionVO;

public class Exam_paperDAO 
{
	private Connection conn = null;
	private Statement state = null;
	private ResultSet rs = null;
	
	//取RID
	public int getNextRid()
	{
		int myID = 0;
		conn = dao.Tools.getConnection();
		try { 
			rs = state.executeQuery("select max(rid) rid from grade");
			if(rs.next())
			{
				myID = rs.getInt("rid");
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
			try {
				if(rs != null)
				rs.close();
				if(state != null)
				state.close();
				if(conn != null)
				conn.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		return ++myID;
	}
	
	//根据CID查出与此科目相同的题
	public ArrayList findByCid(int cid)
	{
		ArrayList array =new ArrayList();
		conn = dao.Tools.getConnection();
		try {
			state = conn.createStatement();
			rs = state.executeQuery("select * from question where cid="+cid);
			while(rs.next())
			{
				QuestionPO qpo = new QuestionPO();
				qpo.setQid(rs.getInt("qid"));
				qpo.setQuestion(rs.getString("question"));
				qpo.setOptionA(rs.getString("optionA"));
				qpo.setOptionB(rs.getString("optionB"));
				qpo.setOptionC(rs.getString("optionC"));
				qpo.setOptionD(rs.getString("optionD"));
				qpo.setAnswer(rs.getString("answer"));
				qpo.setQscore(rs.getInt("qscore"));
				qpo.setCid(rs.getInt("cid"));
				qpo.setDid(rs.getInt("did"));
				qpo.setChoose(rs.getString("choose"));
				array.add(qpo);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
			try {
				if(rs != null)
				rs.close();
				if(state != null)
				state.close();
				if(conn != null)
				conn.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		return array;
	}
	
	//根据CID查出与此科目相同的题
	public QuestionPO findByID(int id)
	{
		QuestionPO qpo = null;
		conn = dao.Tools.getConnection();
		try {
			state = conn.createStatement();
			rs = state.executeQuery("select * from question where qid="+id);
			if(rs.next())
			{
				qpo = new QuestionPO();
				qpo.setQid(rs.getInt("qid"));
				qpo.setQuestion(rs.getString("question"));
				qpo.setOptionA(rs.getString("optionA"));
				qpo.setOptionB(rs.getString("optionB"));
				qpo.setOptionC(rs.getString("optionC"));
				qpo.setOptionD(rs.getString("optionD"));
				qpo.setAnswer(rs.getString("answer"));
				qpo.setQscore(rs.getInt("qscore"));
				qpo.setCid(rs.getInt("cid"));
				qpo.setDid(rs.getInt("did"));
				qpo.setChoose(rs.getString("choose"));
				
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
			try {
				if(rs != null)
				rs.close();
				if(state != null)
				state.close();
				if(conn != null)
				conn.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		return qpo;
	}
	//添加成绩单
	public boolean findGrade(GradePO grade)
	{
		boolean isok = false;
		conn = dao.Tools.getConnection();
		try {
			state = conn.createStatement();
			int i = state.executeUpdate("insert into grade values("+grade.getRid()+","+grade.getSid()+","+grade.getCid()+",to_date('"+grade.getOverdate()+"','yyyy-mm-dd'),"+grade.getTotalanswer()+","+grade.getRightanswer()+","+grade.getWronganswer()+","+grade.getScore()+")");
			if(i > 0)
			{
				isok = true;
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
			try {
				if(state != null)
				state.close();
				if(conn != null)
				conn.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		return isok;
	}
	
	//修改答过的试题
	public boolean updateExamquestion(Exam_sessionVO exam)
	{
		boolean isok = false;
		
		return isok;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?