一、源码特点
?? ?java servlet 学生管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助servlet+bean+dao (mvc模式开发),系统具有完整的源代码和数据库,开发环境为
TOMCAT7.0,Myeclipse8.5开发,数据库为Oracle 10g,使用java语言开发系统主要采用B/S模式开发。
java oracle学生管理系统
二、功能介绍
(1)学生管理:对学生信息进行添加、删除、修改和查看
(2)教师管理:对教师信息进行添加、删除、修改和查看
(3)管理员管理:对管理员信息进行添加、删除、修改和查看
(4)课程管理:对课程信息进行添加、删除、修改和查看
(5)选课管理:对选课信息进行添加、删除、修改和查看
(6)成绩管理:对成绩信息进行添加、删除、修改和查看
(7)学分预警管理:对学分预警信息进行添加、删除、修改和查看
(8)用户登录、身份验证,不同的权限,不同的菜单
数据库设计
[表xuesheng] 学生列属性表格 | |||||
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | xsid | INTEGER | 11 | 是 | 学生编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
5 | bj | VARCHAR | 40 | 否 | 班级 |
6 | zy | VARCHAR | 40 | 否 | 专业 |
7 | xb | VARCHAR | 40 | 否 | 性别 |
8 | nl | VARCHAR | 40 | 否 | 年龄 |
9 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
10 | lxdz | VARCHAR | 40 | 否 | 联系地址 |
11 | xf | VARCHAR | 40 | 否 | 学分 |
[表jiaoshi] 教师列属性表格 | |||||
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | jsid | INTEGER | 11 | 是 | 教师编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
5 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
6 | lxdz | VARCHAR | 40 | 否 | 联系地址 |
[表gly] 管理员列属性表格 | |||||
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | glyid | INTEGER | 11 | 是 | 管理员编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
[表kecheng] 课程列属性表格 | |||||
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | kcid | INTEGER | 11 | 是 | 课程编号 |
2 | kcmc | VARCHAR | 40 | 否 | 课程名称 |
3 | js | VARCHAR | 40 | 否 | 介绍 |
4 | rkjs | VARCHAR | 40 | 否 | 任课教师 |
5 | xf | VARCHAR | 40 | 否 | 学分 |
6 | sksj | VARCHAR | 40 | 否 | 上课时间 |
7 | skdd | VARCHAR | 40 | 否 | 上课地点 |
[表xuanke] 选课列属性表格 | |||||
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | xkid | INTEGER | 11 | 是 | 选课编号 |
2 | xs | VARCHAR | 40 | 否 | 学生 |
3 | kc | VARCHAR | 40 | 否 | 课程 |
4 | xksj | VARCHAR | 40 | 否 | 选课时间 |
5 | xkzt | VARCHAR | 40 | 否 | 选课状态 |
[表chengji] 成绩列属性表格 | |||||
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | cjid | INTEGER | 11 | 是 | 成绩编号 |
2 | xs | VARCHAR | 40 | 否 | 学生 |
3 | kc | VARCHAR | 40 | 否 | 课程 |
4 | djsj | VARCHAR | 40 | 否 | 登记时间 |
5 | cj | VARCHAR | 40 | 否 | 成绩 |
6 | hdxf | VARCHAR | 40 | 否 | 获得学分 |
7 | jg | VARCHAR | 40 | 否 | 及格 |
代码设计
private void insertM(HttpServletRequest request, HttpServletResponse response){//学生添加
xueshengDao dao=new xueshengDao();
xuesheng xuesheng=new xuesheng();
xuesheng.setXsid((String)request.getParameter("keyid"));
xuesheng.setYhm((String)request.getParameter("yhm"));
xuesheng.setMm((String)request.getParameter("mm"));
xuesheng.setXm((String)request.getParameter("xm"));
xuesheng.setBj((String)request.getParameter("bj"));
xuesheng.setZy((String)request.getParameter("zy"));
xuesheng.setXb((String)request.getParameter("xb"));
xuesheng.setNl((String)request.getParameter("nl"));
xuesheng.setLxdh((String)request.getParameter("lxdh"));
xuesheng.setLxdz((String)request.getParameter("lxdz"));
xuesheng.setXf((String)request.getParameter("xf"));
response.setCharacterEncoding("gb2312");
String sql="";
String yhm=(String)request.getParameter("yhm");
DBO db=new DBO();
ResultSet rs=null;
int num=0;
try{
sql="select count(1) as num from xuesheng where yhm='"+yhm+"'";
rs=db.query(sql);
if(rs.next()){
num=rs.getInt("num");
}
if(num>0){
request.setAttribute("flag", "操作失败、用户名重复");
}else{
dao.insert(xuesheng);
request.setAttribute("flag", "操作成功");
}
request.getRequestDispatcher("xuesheng/xueshengadd.jsp").forward(request, response);
} catch (Exception e) {
e.printStackTrace();
}
}
private void ListM(HttpServletRequest request, HttpServletResponse response){//学生信息列表
ResultSet rs=null;
xueshengDao dao = new xueshengDao();
System.out.println("alist");
String sql="";
response.setCharacterEncoding("gb2312");
try{
String xm=(String)request.getParameter("xm");
if(xm!=null&&!xm.equals("")){
sql+=" and xm like '%"+xm+"%'";
}
String bj=(String)request.getParameter("bj");
if(bj!=null&&!bj.equals("")){
sql+=" and bj like '%"+bj+"%'";
}
String zy=(String)request.getParameter("zy");
if(zy!=null&&!zy.equals("")){
sql+=" and zy like '%"+zy+"%'";
}
rs=dao.qlist(sql);
PrintWriter out = response.getWriter();
request.setAttribute("rs", rs);
request.getRequestDispatcher("xuesheng/xueshenglist.jsp").forward(request, response);
}catch(Exception e){
e.toString();
e.printStackTrace();
}
}
private void PListM(HttpServletRequest request, HttpServletResponse response){//测试信息列表
ResultSet rs=null;
xueshengDao dao = new xueshengDao();
String str=(String)request.getParameter("Page");
String sql="";
response.setCharacterEncoding("gb2312");
try{
if(str==null){
str="0";
}
rs=dao.qlist(sql);
PrintWriter out = response.getWriter();
request.setAttribute("rs", rs);
request.getRequestDispatcher("xuesheng/xueshenginfo.jsp?Page=1").forward(request, response);
}catch(Exception e){
e.toString();
e.printStackTrace();
}
}
private void modifyIndex(HttpServletRequest request, HttpServletResponse response){//学生修改首页
ResultSet rs=null;
response.setCharacterEncoding("gb2312");
xueshengDao dao = new xueshengDao();
String keyid=(String)request.getParameter("keyid");
String sql="";
if(keyid!=null&&!keyid.equals("")){
sql+=" and xsid='"+keyid+"'";
}
try{
rs=dao.qlist(sql);
PrintWriter out = response.getWriter();
request.setAttribute("rs", rs);
request.getRequestDispatcher("xuesheng/xueshengmodify.jsp").forward(request, response);
//response.sendRedirect("xuesheng/xueshengmodify.jsp");
}catch(Exception e){
e.toString();
e.printStackTrace();
}
}
private void detailM(HttpServletRequest request, HttpServletResponse response){//学生详细信息页面
ResultSet rs=null;
response.setCharacterEncoding("gb2312");
xueshengDao dao = new xueshengDao();
String keyid=(String)request.getParameter("keyid");
String sql="";
if(keyid!=null&&!keyid.equals("")){
sql+=" and xsid='"+keyid+"'";
}
try{
rs=dao.qlist(sql);
request.setAttribute("rs", rs);
request.getRequestDispatcher("xuesheng/xueshengdetail.jsp").forward(request, response);
}catch(Exception e){
e.toString();
e.printStackTrace();
}
}
private void deleteM(HttpServletRequest request, HttpServletResponse response){//学生删除
ResultSet lst=null;
xueshengDao dao = new xueshengDao();
response.setCharacterEncoding("gb2312");
String keyid=(String)request.getParameter("keyid");
try{
dao.delete(keyid);
request.setAttribute("flag", "删除成功");
request.getRequestDispatcher("xueshengServlet?method=list").forward(request, response);
//response.sendRedirect("xueshengServlet?method=list");
}catch(Exception e){
e.toString();
e.printStackTrace();
}
}
三、注意事项
?? ?1、管理员账号:admin密码:admin 数据库配置文件DBO.java
?? ? 2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Oracle 10g,使用java语言开发。
?? ?3、数据库文件名是re data.sql re table.sql ,系统名称stu
?? ?4、系统首页地址:http://127.0.0.1:8080/stu/login.jsp
四 系统实现
源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓