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;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
网上在线考试系统 (带完整数据库) (161个子文件)
StartExam.class 7KB
StudentDAO.class 6KB
QuestionsDAO.class 6KB
StartExamDAO.class 5KB
Student.class 5KB
QuestionsForm.class 5KB
Manager.class 4KB
TaoTiDAO.class 4KB
Questions.class 4KB
LessonDAO.class 4KB
Lesson.class 4KB
TaoTi.class 4KB
ManagerDAO.class 3KB
StuResultDAO.class 3KB
StudentForm.class 3KB
StuResult.class 2KB
ConnDB.class 2KB
StuResultForm.class 2KB
ChStr.class 2KB
TaoTiForm.class 2KB
temp.class 1KB
LessonForm.class 1KB
ManagerForm.class 1KB
SelfRequestProcessor.class 904B
QueryResultIfForm.class 771B
MoreSelect.class 599B
.classpath 558B
org.eclipse.wst.jsdt.ui.superType.container 49B
style.css 2KB
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
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
ConnDB.java 4KB
QuestionsForm.java 4KB
Lesson.java 3KB
ManagerDAO.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 105KB
top_bg.jpg 76KB
default_top.jpg 74KB
login_top.jpg 74KB
login_bottom.jpg 71KB
m_login.jpg 62KB
m_top.jpg 60KB
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
startExam_left.jpg 13KB
function.js 2KB
AjaxRequest.js 1KB
onclock.JS 720B
.jsdtscope 580B
startExam.jsp 9KB
questions_Modify.jsp 6KB
questions_Add.jsp 6KB
student_Modify.jsp 6KB
register.jsp 5KB
questions.jsp 5KB
taoTi.jsp 4KB
student.jsp 4KB
pwd_Modify.jsp 4KB
lesson.jsp 4KB
seekPwd1.jsp 3KB
index.jsp 3KB
共 161 条
- 1
- 2
资源评论
znufe07090402
- 粉丝: 9
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功