package com.wgh.dao;
import com.wgh.actionForm.StudentForm;
import com.wgh.core.ChStr;
import com.wgh.core.ConnDB;
import java.sql.*;
import java.text.SimpleDateFormat;
import java.util.*;
import java.text.NumberFormat;
public class StudentDAO {
private ConnDB conn=new ConnDB();
private ChStr chStr=new ChStr();
//考生身份验证
public int checkStudent(StudentForm studentForm) {
int flag = 1;
String sql = "SELECT * FROM tb_student where ID='" +
studentForm.getID()+ "'";
ResultSet rs = conn.executeQuery(sql);
try {
if (rs.next()) {
String pwd = studentForm.getPwd();
if (pwd.equals(rs.getString(3))) {
rs.last();
int rowSum = rs.getRow(); //获取记录总数
rs.first();
if (rowSum!=1) {
flag = 2;
System.out.print("获取row的值:" + sql + rowSum);
}
} else {
flag = 2;
}
}else{
flag = 2;
}
} catch (Exception ex) {
flag = 2;
System.out.println(ex.getMessage());
}
return flag;
}
//添加数据
public String insert(StudentForm s) {
String sql1="SELECT * FROM tb_student WHERE cardNo='"+s.getCardNo()+"'";
ResultSet rs = conn.executeQuery(sql1); //执行SQL查询语句
String sql = "";
String falg = "miss"; //用于记录返回信息的变量
String ID="";
try {
if (rs.next()) { //假如存在记录
falg="re"; //表示考生信息已经注册
} else {
/*****************自动生成准考证号***********************************************/
String sql_max="SELECT max(ID) FROM tb_student";
ResultSet rs_max=conn.executeQuery(sql_max); //查询最大的准考证号
java.util.Date date=new java.util.Date(); //实例化java.util.Date()类
String newTime=new SimpleDateFormat("yyyyMMdd").format(date); //格式化当前日期
if(rs_max.next()){
String max_ID=rs_max.getString(1); //获取最大的准考证号
int newId=Integer.parseInt(max_ID.substring(10,16))+1;//取出最大准考证号中的数字编号+1
String no=chStr.formatNO(newId,6); //将生成的编号格式化为6位
ID="CN"+newTime+no; //组合完整的准考证号
}else{ //当第一个考生注册时
ID="CN"+newTime+"000001"; //生成第一个准考证号
}
/********************************************************************************/
sql = "INSERT INTO tb_student (ID,name,pwd,sex,question,answer,profession,cardNo) values('" +
ID+ "','" +s.getName() +"','"+s.getPwd()+"','"+s.getSex()+"','"+s.getQuestion()+
"','"+s.getAnswer()+"','"+s.getProfession()+"','"+s.getCardNo()+"')";
int ret= conn.executeUpdate(sql); //保存考生注册信息
if(ret==0){
falg="miss"; //表示考生注册失败
}else{
falg="恭喜您,注册成功!\\r请记住您的准考证号:"+ID; //返回生成的准考证号
}
conn.close(); //关闭数据库连接
}
} catch (Exception e) {
falg="miss";
System.out.println("添加考生信息时的错误信息:"+e.getMessage()); //输出错误提示信息到控制台
}
return falg;
}
//查询方法
public List query(String id) {
List studentList = new ArrayList();
StudentForm studentForm1 = null;
String sql="";
if(id==null ||id.equals("")){
sql = "SELECT * FROM tb_student ORDER BY joinTime DESC";
}else{
sql = "SELECT * FROM tb_student WHERE id='" +id+ "'";
}
ResultSet rs = conn.executeQuery(sql);
try {
while (rs.next()) {
studentForm1 = new StudentForm();
studentForm1.setID(rs.getString(1));
studentForm1.setName(rs.getString(2));
studentForm1.setPwd(rs.getString(3));
studentForm1.setSex(rs.getString(4));
studentForm1.setJoinTime(java.text.DateFormat.getDateTimeInstance().parse(rs.getString(5)));
studentForm1.setQuestion(rs.getString(6));
studentForm1.setAnswer(rs.getString(7));
studentForm1.setProfession(rs.getString(8));
studentForm1.setCardNo(rs.getString(9));
studentList.add(studentForm1);
}
} catch (Exception ex) {}
return studentList;
}
//修改考生资料
public int update(StudentForm s){
String sql="UPDATE tb_student SET pwd='"+s.getPwd()+"',sex='"+s.getSex()+"',question='"+s.getQuestion()+"',answer='"+s.getAnswer()+"',profession='"+s.getProfession()+"' where ID='"+s.getID()+"'";
int ret=conn.executeUpdate(sql);
System.out.println("修改考生资料时的SQL:"+sql);
conn.close();
return ret;
}
//找回密码(第一步)
public StudentForm seekPwd1(StudentForm s){
String sql="SELECT * FROM tb_student WHERE ID='"+s.getID()+"'";
ResultSet rs = conn.executeQuery(sql);
try {
if (rs.next()) {
s.setID(rs.getString(1));
s.setQuestion(rs.getString(6));
}else{
s.setID("");
}
}catch(Exception e){
System.out.println("找回密码(第一步)出现的错误信息:"+e.getMessage());
}
return s;
}
// 找回密码(第二步)
public StudentForm seekPwd2(StudentForm s){
String sql="SELECT * FROM tb_student WHERE ID='"+s.getID()+"'";
System.out.println("SQL"+sql);
ResultSet rs = conn.executeQuery(sql);
try {
if (rs.next()) {
String ID=rs.getString(1);
String pwd=rs.getString(3);
String answer=rs.getString(7);
if(answer.equals(s.getAnswer())){
s.setID(ID);
s.setPwd(pwd);
System.out.println("密码:"+pwd);
}else{
s.setID("");
}
}
}catch(Exception e){
System.out.println("找回密码(第二步)出现的错误信息:"+e.getMessage());
}
return s;
}
// 删除数据
public int delete(StudentForm studentForm) {
int flag=0;
String[] delId=studentForm.getDelIdArray();
if (delId.length>0){
String id="'";
for(int i=0;i<delId.length;i++){
id=id+delId[i]+"','";
}
id=id.substring(0,id.length()-2);
String sql = "DELETE FROM tb_student where id in (" + id +")";
System.out.println("删除时的SQL:"+sql);
flag = conn.executeUpdate(sql);
conn.close();
}else{
flag=0;
}
return flag;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
(1)单击“管理员信息管理”按钮,对管理员信息进行添加、修改及删除操作。 (2)单击“考生信息管理”按钮,对考生信息进行查看及删除操作。 注意:如果该考生已经考过试,那么该考生的信息无法删除。 (3)单击“考生成绩查询”按钮,对所有考生的成绩进行查询操作。 (4)单击“课程信息管理”按钮,对课程信息进行添加、查看及删除操作。 (5)单击“套题信息管理”按钮,对套题信息进行添加、修改及删除操作。 (6)单击“考试题目管理”按钮,对考试题目信息进行添加、修改及删除操作。 (7)单击“退出后台管理”按钮,退出后台管理操作界面。 数据库安装 ; c+ e+ d+ N; D (1)将Database文件夹中的扩展名为db_netExam_Data.MDF和db_netExam_Log.LDF的两个文件拷贝到SQL Server安装路径下的Data文件夹中。 (2)打开SQL Server 2005中的“企业管理器”,然后展开本地服务器,在“数据库”数据项上单击鼠标右键,在弹出的快捷菜单中选择“所有任务”/“附加数据库”菜单项。 (3)将弹出“附加数据库”对话框,在该对话框中单击【 】按钮,选择所要附加数据库的db_netExam_Data.MDF文件,单击【确定】按钮,即可完成数据库的附加操作。
资源推荐
资源详情
资源评论
收起资源包目录
javaweb在线测试系统源码项目+数据库文件(导入可直接使用) (173个子文件)
StartExam.class 7KB
StudentDAO.class 7KB
QuestionsDAO.class 6KB
StartExamDAO.class 5KB
Student.class 5KB
QuestionsForm.class 5KB
TaoTiDAO.class 4KB
Manager.class 4KB
LessonDAO.class 4KB
Questions.class 4KB
Lesson.class 4KB
TaoTi.class 4KB
ManagerDAO.class 4KB
ConnDB.class 3KB
StuResultDAO.class 3KB
StudentForm.class 3KB
StuResult.class 2KB
ChStr.class 2KB
StuResultForm.class 2KB
TaoTiForm.class 2KB
temp.class 1KB
LessonForm.class 1KB
ManagerForm.class 1KB
SelfRequestProcessor.class 933B
QueryResultIfForm.class 771B
MoreSelect.class 599B
.classpath 836B
org.eclipse.wst.common.component 442B
org.eclipse.wst.jsdt.ui.superType.container 49B
style.css 2KB
Thumbs.db 90KB
seedPwd.gif 3KB
step3.gif 1KB
step2.gif 1KB
step1.gif 1KB
add.gif 587B
f_ico.gif 173B
m_ico.gif 65B
m_ico1.gif 59B
bg_01.gif 49B
xalan-2.4.0.jar 974KB
freemarker-2.3.8.jar 784KB
struts.jar 537KB
xwork-2.0.4.jar 445KB
mysql-connector-java-3.1.12-bin.jar 436KB
antlr.jar 350KB
standard.jar 343KB
commons-beanutils.jar 184KB
commons-digester.jar 164KB
ognl-2.6.11.jar 164KB
commons-validator.jar 82KB
jakarta-oro.jar 64KB
commons-logging.jar 37KB
commons-fileupload.jar 22KB
jstl.jar 17KB
StudentDAO.java 7KB
StartExam.java 7KB
QuestionsDAO.java 6KB
Student.java 5KB
StartExamDAO.java 5KB
Questions.java 4KB
LessonDAO.java 4KB
Manager.java 4KB
TaoTiDAO.java 4KB
TaoTi.java 4KB
QuestionsForm.java 4KB
Lesson.java 3KB
ManagerDAO.java 3KB
ConnDB.java 3KB
StuResultDAO.java 3KB
StudentForm.java 2KB
StuResult.java 2KB
StuResultForm.java 1KB
TaoTiForm.java 1KB
ChStr.java 1KB
LessonForm.java 870B
temp.java 760B
ManagerForm.java 682B
SelfRequestProcessor.java 531B
QueryResultIfForm.java 419B
MoreSelect.java 246B
default_mid.JPG 222KB
default_bottom.JPG 112KB
default_top.jpg 103KB
login_top.jpg 100KB
top_bg.jpg 95KB
m_top.jpg 87KB
login_bottom.jpg 77KB
m_login.jpg 75KB
login_mid.jpg 51KB
subBG.jpg 32KB
error.jpg 19KB
startExam_ico.jpg 18KB
startExam_rightTop.jpg 14KB
startExam_rightBottom.jpg 14KB
startExam_leftTop.jpg 14KB
startExam_leftBottom.jpg 14KB
startExam_bottom.jpg 13KB
startExam_top.jpg 13KB
startExam_right.jpg 13KB
共 173 条
- 1
- 2
资源评论
陌上人如玉君子世无双
- 粉丝: 66
- 资源: 28
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功