StuCourAction.java
该程序完成了学生登陆成功后选课处理过程。
package action; import db.dbConn; import java.sql.*; import java.util.Vector; import javax.servlet.http.*; import org.apache.struts.action.*; public class StuCourForm extends org.apache.struts.action.Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String prompt = null; DynaActionForm StuCourForm = (DynaActionForm)form; dbConn javaBean = new dbConn(); HttpSession session = request.getSession(); //将表单中的数据添加到Vector对象中; String cno = StuCourForm.getString("Cno"); Vector<String> Cno = new Vector(1, 1); Cno.add(cno); //查询数据库得到该用户已经选过的课程; String SNO = (String) session.getAttribute("Sno"); String SQL = "SELECT Cno From csinfo where Sno='" + SNO + "'"; ResultSet rs = (ResultSet) javaBean.executeQuery(SQL); Vector<String> oldCNO = new Vector(1, 1); while (rs.next()) { oldCNO.add(rs.getString("Cno")); } int insert = 1;//全局变量:当=1时,所选课程插入数据库;当=0时,不插入也相当于没选择成功; //防止用户没有选课就提交了; if (cno == null) { insert = 0; request.setAttribute("msg", "您还未选课!请马上选课!"); prompt = "StuCour_failure"; } //判断课程是否重复被同一个用户多次选了。 if (Cno != null && !oldCNO.isEmpty()) {? //注意:oldCNO是一个记录组对象,判空时,不可用!=null for (int i = 0; i < Cno.capacity(); i++) { for (int j = 0; j < oldCNO.capacity(); j++) { if (oldCNO.get(j).equals(Cno.get(i))) { session.setAttribute("Cno", Cno.get(i)); insert = 0; request.setAttribute("msg", "您已经选过此课程啦!"); prompt = "StuCour_failure"; break;//跳出第一个FOR循环; } } if (insert == 0) { break;//跳出第二个FOR循环; } } } //选课成功插入数据库中的csinfo表中; if (insert == 1) { for (int i = 0; i < Cno.capacity(); i++) { javaBean.executeUpdate("insert into csinfo(Sno,Cno) values('" + SNO + "','" + Cno.get(i) + "')"); } session.setAttribute("SCNO", Cno); prompt = "StuCour_success";} return mapping.findForward(prompt); } }
AlterPassW.jsp
该程序完成了修改密码的处理过程。
package action;
import org.apache.struts.action.*;
import db.dbConn;
import javax.servlet.http.*;
public class AlterPassW extends org.apache.struts.action.Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
DynaActionForm alterForm=(DynaActionForm)form;
dbConn javaBean=new dbConn();
HttpSession session = request.getSession();
String prompt=null;
String oldk=alterForm.getString("oldk");
String newk1=alterForm.getString("newk1");
String newk2=alterForm.getString("newk2");
if (newk1 != null & newk2 != null) {
String key = (String) session.getAttribute("Key");
String Sno = (String) session.getAttribute("Sno");
if ((newk1.equals(newk2) && oldk.equals(key))) {
javaBean.executeUpdate("Update stuinfo Set keys='" + newk1 + "'" + "Where Sno='" + Sno + "'");
request.setAttribute("msgg", "恭喜您密码修改成功!");
prompt="alter_success";
}
else {
request.setAttribute("msgg", "抱歉未修改成功!");
prompt="alter_failure";
}
}
return mapping.findForward(prompt);
}
}
DelStuAction.jsp
管理员删除学生信息的处理过程:
package action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForward;
import db.dbConn;
import java.sql.*;
import javax.servlet.http.*;
import org.apache.struts.action.DynaActionForm;
public class DelStuAction extends org.apache.struts.action.Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
dbConn javaBean = new dbConn();
DynaActionForm delStuForm = (DynaActionForm) form;
String sno = delStuForm.getString("sno");
String prompt = null;
if (sno != null) {
ResultSet rs = javaBean.executeQuery("SELECT * From stuinfo where Sno='" + sno + "'");
if (rs.next()==true) {
javaBean.executeUpdate("delete from stuinfo where Sno=" + "'" + sno + "'");
request.setAttribute("msgs", "删除成功!");
prompt = "delStu_success";
} else {
request.setAttribute("msgs", "删除失败!");
prompt = "delStu_failure";
}
}
return mapping.findForward(prompt);
}
}
DelCourAction.jsp
该程序完成了管理员删除课程信息的处理过程:
package action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionForward; import db.dbConn; import java.sql.*; import javax.servlet.http.*; import org.apache.struts.action.DynaActionForm; public class DelCourAction extends org.apache.struts.action.Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { dbConn javaBean = new dbConn(); DynaActionForm delStuForm = (DynaActionForm) form; String cno = delStuForm.getString("cno"); String prompt = null; if (cno != null) { ResultSet rs = javaBean.executeQuery("SELECT * From courinfo where Cno='" + cno + "'"); if (rs.next()==true) { javaBean.executeUpdate("delete from courinfo where Cno=" + "'" + cno + "'"); request.setAttribute("msgc", "删除成功!"); prompt = "delCour_success"; } else { request.setAttribute("msgc", "删除失败!"); prompt = "delCour_failure"; } } return mapping.findForward(prompt); } }
DelScAction.jsp
该程序完成了管理员删除选课记录信息的过程:
package action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionForward; import db.dbConn; import java.sql.*; import javax.servlet.http.*; import org.apache.struts.action.DynaActionForm; public class DelScAction extends org.apache.struts.action.Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { dbConn javaBean = new dbConn(); DynaActionForm delStuForm = (DynaActionForm) form; String sno = delStuForm.getString("snod"); String cno = delStuForm.getString("cnod"); String prompt = null; if (cno != null) { ResultSet rs = javaBean.executeQuery("select* from csinfo where Sno=" + "'" + sno + "'and Cno=" + "'" + cno + "'"); if (rs.next()==true) { javaBean.executeUpdate("delete from csinfo where Sno=" + "'" + sno + "'and Cno=" + "'" + cno + "'"); request.setAttribute("msgsc", "删除成功!"); prompt = "delSC_success"; } else { request.setAttribute("msgsc", "删除失败!"); prompt = "delSC_failure"; } } return mapping.findForward(prompt); } }
AddSAction.jsp
该程序完成了管理员添加学生信息的处理过程:
package action;
import java.io.UnsupportedEncodingException;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForward;
import db.dbConn;
import java.sql.*;
import javax.servlet.http.*;
import org.apache.struts.action.DynaActionForm;
public class AddSAction extends org.apache.struts.action.Action {
public String getStrs(String strs) throws UnsupportedEncodingException {
byte str[] = strs.getBytes("ISO-8859-1");
strs = new String(str, "GB2312");////? 表单信息乱码处理;
return strs;
}
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
DynaActionForm addSForm = (DynaActionForm) form;
dbConn javaBean = new dbConn();
String prompt = null;
String sno = getStrs(addSForm.getString("STno"));
String sname = getStrs(addSForm.getString("STname"));
String sex = getStrs(addSForm.getString("STsex"));
String sdept = getStrs(addSForm.getString("STdept"));
String sage = getStrs(addSForm.getString("STage"));
if (sno != null && sname != null) {
Integer judge = javaBean.executeUpdate("insert into stuinfo(Sno,Sname,Ssex,Sdept,Sage)values('" + sno + "','" + sname + "','" + sex + "','" + sdept + "','" + sage + "')");
if (judge != 0) {?? // 返回的是所影响的行数;
request.setAttribute("msgGs", "学生信息增加成功!");
prompt = "addS_success";
} else {
request.setAttribute("msgGs", "抱歉!学生信息未增加成功!");
prompt = "addS_failure";
}
}
return mapping.findForward(prompt);
}
}
AddCourAction.jsp
该程序完成了管理员添加课程信息的处理过程:
package action; import java.io.UnsupportedEncodingException; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionForward; import db.dbConn; import javax.servlet.http.*; import org.apache.struts.action.DynaActionForm; public class AddCourAction extends org.apache.struts.action.Action { public String getStrs(String strs) throws UnsupportedEncodingException { ? byte str[] = strs.getBytes("ISO-8859-1"); strs = new String(str, "GB2312");////? 表单信息乱码处理; return strs; } public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String prompt = null; DynaActionForm addCForm = (DynaActionForm) form; String cno = getStrs(addCForm.getString("CTno")); String cname = getStrs(addCForm.getString("CTname")); String credit = getStrs(addCForm.getString("CTcredit")); dbConn javaBean = new dbConn(); if (cno != null && cname != null) { Integer judge = javaBean.executeUpdate("insert into courinfo(Cno,Cname,Ccredit)values('" + cno + "','" + cname + "','" + credit + "')"); if (judge != 0) {?? // 返回的是所影响的行数; request.setAttribute("msgGc", "课程信息增加成功!"); prompt = "addCour_success"; } else { request.setAttribute("msgGc", "抱歉!课程信息未增加成功!"); prompt = "addCour_failure"; } } return mapping.findForward(prompt); } }
AddSCAction.jsp
该过程完成了管理员添加学生选课后,成绩出来后,评分数的处理过程:
package action; import java.io.UnsupportedEncodingException; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionForward; import db.dbConn; import javax.servlet.http.*; import org.apache.struts.action.DynaActionForm; public class AddSCAction extends org.apache.struts.action.Action { public String getStrs(String strs) throws UnsupportedEncodingException { byte str[] = strs.getBytes("ISO-8859-1"); strs = new String(str, "GB2312");//? 表单信息乱码处理; return strs; } public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { DynaActionForm addSCForm = (DynaActionForm) form; dbConn javaBean = new dbConn(); String prompt = null; HttpSession session = request.getSession(); String score = getStrs(addSCForm.getString("CScore")); String sno = (String) session.getAttribute("Gsno"); String cno = (String) session.getAttribute("Gcno");//从数据库中找出分数是空的记录; if (sno != null && cno != null && score != null) { Integer judge = javaBean.executeUpdate("update csinfo set Grade='" + score + "'where Sno='" + sno + "'and Cno='" + cno + "'"); if (judge != 0) { request.setAttribute("msgGsc", "分数增加成功!"); prompt = "addSC_success"; } else { request.setAttribute("msgGsc", "抱歉!分数未增加成功!"); prompt = "addSC_failure"; } } return mapping.findForward(prompt); } }
到此为止,所有的页面代码都处理完毕。
只要读者有心,按照上述六步走下来了,完成学生选课系统,体验web struts项目的心愿即将实现!