package com.course;
import java.io.*;
import java.sql.ResultSet;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;public class StudentLoginSvlt extends HttpServlet{
//响应get请求
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
//接收提交的跟选课相关的各种信息
String stu_id =req.getParameter("id");
String cour_id=req.getParameter("cour_id");
String class_id=req.getParameter("class_id");
String prepare=req.getParameter("prepare");
String pw1=null;
String pw2=null;
String e_mail=null;
String tel=null;
//获得请求中的参数
String action = req.getParameter("action"); ResultSet rs=null;
//如果请求中是更新参数
if ("update".equalsIgnoreCase(action)) { stu_id =req.getParameter("id");
pw1=req.getParameter("password1");
pw2=req.getParameter("password2");
if(pw1.equals("") || pw2.equals("") || pw1==null || pw2==null)
doError(req,res,"密码不能为空!");
e_mail=req.getParameter("e_mail");
tel=req.getParameter("tel");
doUpdate(req,res,pw1,pw2,e_mail,tel,stu_id);
res.sendRedirect("student.jsp");
}
//如果请求中是更改成绩参数
if ("check".equalsIgnoreCase(action)) {
rs=getScore(stu_id) ;
sendResultSet(req,res,rs,"/check.jsp");
}
//如果参数中是注册课程参数
if("enrol".equalsIgnoreCase(action)){
doEnrol(req,res,stu_id,cour_id,class_id,prepare);
res.sendRedirect("DisplayCourse.jsp");} }
//注册课程课方法
public void doEnrol(HttpServletRequest req, HttpServletResponse res,
String stu_id,String cour_id,String class_id,String prepare)
throws ServletException, IOException {
//System.out.println("test doEnrol");
int num=0;
//声明JavaBean对象
checkEnrol check=new checkEnrol();
//System.out.println(check);
//如果预修课学分为0,则注册
if(prepare.equals("0") )
{ num= check.enrol(class_id,stu_id); }
else {
//判断预修课是否符合要求
if( check.hasPassPrepare(prepare))
{num= check.enrol(class_id,stu_id);}
else doError(req,res,"清先完成预修课");
}
if(num==0){
doError(req,res,"注册课程失败!!");
}
}
//修改学生信息
public void doUpdate(HttpServletRequest req, HttpServletResponse res,
String pw1,String pw2,String e_mail,String tel,String id)
throws ServletException, IOException{
int num=0;
if(!pw1.equals(pw2))
doError(req,res,"密码不一致,请重输!");
checkEnrol check=new checkEnrol();
sqlBean db = new sqlBean();
num= check.updatestu(pw1,id,e_mail,tel);
if(num==0) doError(req,res,"更新失败");
}
//获得课程成绩
public ResultSet getScore(String stu_id){
String sql="select enrol.score , course.name ,course. "+
"from enrol ,course ,classes "+
"where stu_id='"+stu_id+"' "+
"and enrol.class_id=classes.id "+
"and classes.cour_id=course.id ";
sqlBean db = new sqlBean();
ResultSet rs= db.executeQuery(sql);
return rs;
}
//错误处理方法
public void doError(HttpServletRequest req,
HttpServletResponse res,
String str)
throws ServletException, IOException {
req.setAttribute("problem", str);
RequestDispatcher rd = getServletContext().getRequestDispatcher("/errorpage.jsp");
rd.forward(req, res);
return;
}
//将查询后的结果集存储在session中
public void sendResultSet(HttpServletRequest req, HttpServletResponse res,
java.sql.ResultSet rs, String target)
throws ServletException, IOException {
req.setAttribute("rs", rs);
RequestDispatcher rd = getServletContext().getRequestDispatcher(target);
rd.forward(req, res);
return;
}
//响应post请求
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException { doGet(req, res); }
}
import java.io.*;
import java.sql.ResultSet;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;public class StudentLoginSvlt extends HttpServlet{
//响应get请求
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
//接收提交的跟选课相关的各种信息
String stu_id =req.getParameter("id");
String cour_id=req.getParameter("cour_id");
String class_id=req.getParameter("class_id");
String prepare=req.getParameter("prepare");
String pw1=null;
String pw2=null;
String e_mail=null;
String tel=null;
//获得请求中的参数
String action = req.getParameter("action"); ResultSet rs=null;
//如果请求中是更新参数
if ("update".equalsIgnoreCase(action)) { stu_id =req.getParameter("id");
pw1=req.getParameter("password1");
pw2=req.getParameter("password2");
if(pw1.equals("") || pw2.equals("") || pw1==null || pw2==null)
doError(req,res,"密码不能为空!");
e_mail=req.getParameter("e_mail");
tel=req.getParameter("tel");
doUpdate(req,res,pw1,pw2,e_mail,tel,stu_id);
res.sendRedirect("student.jsp");
}
//如果请求中是更改成绩参数
if ("check".equalsIgnoreCase(action)) {
rs=getScore(stu_id) ;
sendResultSet(req,res,rs,"/check.jsp");
}
//如果参数中是注册课程参数
if("enrol".equalsIgnoreCase(action)){
doEnrol(req,res,stu_id,cour_id,class_id,prepare);
res.sendRedirect("DisplayCourse.jsp");} }
//注册课程课方法
public void doEnrol(HttpServletRequest req, HttpServletResponse res,
String stu_id,String cour_id,String class_id,String prepare)
throws ServletException, IOException {
//System.out.println("test doEnrol");
int num=0;
//声明JavaBean对象
checkEnrol check=new checkEnrol();
//System.out.println(check);
//如果预修课学分为0,则注册
if(prepare.equals("0") )
{ num= check.enrol(class_id,stu_id); }
else {
//判断预修课是否符合要求
if( check.hasPassPrepare(prepare))
{num= check.enrol(class_id,stu_id);}
else doError(req,res,"清先完成预修课");
}
if(num==0){
doError(req,res,"注册课程失败!!");
}
}
//修改学生信息
public void doUpdate(HttpServletRequest req, HttpServletResponse res,
String pw1,String pw2,String e_mail,String tel,String id)
throws ServletException, IOException{
int num=0;
if(!pw1.equals(pw2))
doError(req,res,"密码不一致,请重输!");
checkEnrol check=new checkEnrol();
sqlBean db = new sqlBean();
num= check.updatestu(pw1,id,e_mail,tel);
if(num==0) doError(req,res,"更新失败");
}
//获得课程成绩
public ResultSet getScore(String stu_id){
String sql="select enrol.score , course.name ,course. "+
"from enrol ,course ,classes "+
"where stu_id='"+stu_id+"' "+
"and enrol.class_id=classes.id "+
"and classes.cour_id=course.id ";
sqlBean db = new sqlBean();
ResultSet rs= db.executeQuery(sql);
return rs;
}
//错误处理方法
public void doError(HttpServletRequest req,
HttpServletResponse res,
String str)
throws ServletException, IOException {
req.setAttribute("problem", str);
RequestDispatcher rd = getServletContext().getRequestDispatcher("/errorpage.jsp");
rd.forward(req, res);
return;
}
//将查询后的结果集存储在session中
public void sendResultSet(HttpServletRequest req, HttpServletResponse res,
java.sql.ResultSet rs, String target)
throws ServletException, IOException {
req.setAttribute("rs", rs);
RequestDispatcher rd = getServletContext().getRequestDispatcher(target);
rd.forward(req, res);
return;
}
//响应post请求
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException { doGet(req, res); }
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货