学生成绩管理系统

一、实验目的

为了更好的学习理解JavaWeb,创建了此系统。此系统可以帮助学习Java web基础,特别是javaweb入门,此系统使用大部分Java web基础知识。Java web课程设计联系了前端的HTML、CSS、JAVASCRIPT、JSP等各项语言,同时紧密的将后台开发的java语言和数据库联系在一起,从整体上实现了java web项目的认识与实践。

二、实验平台

eclipse下的javaee,Tomcat服务器,mysql数据库。

三、实验主要内容

学生成绩管理系统,此系统使用开发模式2,使用Javabean与jsp结合的形式,封装数据库中数据,并由jsp显示界面。使用servlet,根据登录页面传的数据分析用户的身份,传送到不同界面,在学生端界面使用精确查询,学生输入学号,查询出各科成绩及考试情况信息。教师端界面,javabean结合jsp,在servlet里,把数据库表的信息存储到session域中,在教师端主页面使用EL表达式的形式调用了session域的表信息,教师端主页面采用css,JavaScript等,显示了学生考试信息,并实现了增删改,链接到不同jsp中。

四、部分关键代码实现:

1.用户登录,注册功能:

登录界面(index.jsp):

系统的主页面,使用JavaScript,不输入用户名,密码会进行页面提示,学生身份使用任意注册用户名与密码,教师身份输入固定用户名:“root”,密码:"123456",从而进入LoginServlet,重定向判断进入教师端还是学生端主页面。

<%@ page language="java" contentType="text/html; charset=gbk"pageEncoding="gbk"%>
<!--本系统使用session域结合jsp,el域jstl 和JavaScript  -->
<!--登录主页面,JavaScript+css  -->
<!DOCTYPE html>
<html>
<head><title>登录页面</title><script type="text/javascript">function chkData(){var uname = document.getElementById("uname");   // 获取控件var upasss = document.getElementById("upass");var flag = false;if(uname.value==""){alert("请填写用户名信息。");uname.focus();}else if(upass.value==""){alert("请填写密码信息。");upass.focus();}else{flag = true;}return flag;}</script><style type="text/css">.blue{color:black;font-size:30px;margin-top:10px;}.jiemian{width:800px;height: 800px;background-color: aqua;}.ding{ width: auto;height: auto;background-color: rgb(179,214,234);font-size:40px;margin:0px;padding:0px;}.zheng{ background-color: rgba(83,146,255,1.00);margin-top:10px;}.zhong-y{margin-left:auto;margin-right:auto;width:400px;height: 200px;padding-top:10px;}.zhong-z{width:300px;height:300px;}.zhuce{font-size:15px;}.xia{width:500px;height:500px;}</style></head>
<body style="background-image:url('img/jiemian.jpg');"><div class="ding" align="center">欢迎登录学生成绩管理系统</div>
<div >    <div class="zhong-y"><form name="frm" method="post" action="LoginServlet"><table border="1"  class="blue" ><tr><th colspan="2" class="blue">学生成绩管理系统</th></tr><tr><td>用户名:</td><td><input type="text" name="uname" id="uname"/></td></tr><tr><td>密码:</td><td><input type="password" name="upass" id="upass"/></td></tr><tr><tr><td><input name="user" type="radio" value="student" checked>学生</td><td><input name="user" type="radio" value="administrator">老师<br></td></tr><td colspan="2" align="center"><input type="submit" value="登录" onclick="return chkData();"/> <input type="reset" value="重置"/></td></tr></form>
</div><form name="fm" method="post" action="zhuce.jsp" align="center"><tr><td align="center" colspan="2" ><p class="zhuce">没有账号?点击注册</p></td><td><input type="submit" value="注册"></td></tr></form></table>
</body>
</html>

登录身份判断servlet:

LoginServlet:从index.jsp主页面使用form接收传来的数据,进入到此servlet,判断身份进入学生还是教师端界面。

package cn.edu.bzu.servlet;import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/*** Servlet implementation class LoginServlet*/
/*** @author 重定向,教师使用账号:root,密码:123456 登录教师端页面**/
@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/public LoginServlet() {super();// TODO Auto-generated constructor stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stub//response.getWriter().append("Served at: ").append(request.getContextPath());String uname=request.getParameter("uname");String upass=request.getParameter("upass");if(("root").equals(uname)&&("123456").equals(upass)) {response.sendRedirect("StudenListServlet");}else {response.sendRedirect("/StudentScoresManager/StuScoresListSearch.jsp");}}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}

2.注册界面(Regist.jsp):

学生注册身份,并在doRegist.jsp中返回显示注册的信息。

<%@ page language="java"  pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<!--注册页面
使用JavaScript提示页面信息-->
<title>用户注册页面</title><script type="text/javascript">function chkData(){var  uname = document.getElementById("uname");  var upass = document.getElementById("upass");var upassConfirm=document.getElementById("upassConfirm");var phone=document.getElementById("phone");var flag = false;if(uname.value==""){alert('请填写用户名信息。');uname.focus();}else if(upass.value==""){alert('请填写密码信息。');upass.focus();}else if(upass.value!=upassConfirm.value){alert('确认密码与密码不一致');upassConfirm.focus();}else if(phone.value==""){alert('请输入手机号');phone.focus();}else{flag = true;}return flag;}</script>
</head>
<body><center>用户信息注册页面,带*号为必填项</center><form name="frm" action="doRegist.jsp" method="post"><table border="1" align="center"><tr><td>用户名*:</td><td><input type="text" name="uname" id="uname"/></td></tr><tr><td>密码*:</td><td><input type="password" name="upass" id="upass"/></td></tr><tr><td>确认密码*:</td><td><input type="password" name="upassConfirm" id="upassConfirm"/></td></tr><tr><td>手机号*:</td><td><input type="text" name="phone" id="phone"/></td></tr><tr><td>电子邮箱:</td><td><input type="text" name="email" id="email"/></td></tr><tr><td>性别:</td><td><input type="radio" name="gender" value="male"/>男<input type="radio" name="gender" value="female"/>女</td></tr><tr><td colspan="2" align="center"><input type="submit" value="注册" onclick="return chkData();"/><input type="reset" value="重置"/></td></tr></table></form>
</body>

注册信息显示界面(doRegist.jsp):

<%@ page language="java" pageEncoding="utf-8"%>
<!--
注册页面执行界面,
显示注册的信息-->
<!DOCTYPE html>
<html>
<head>
<title>注册信息</title>
</head>
<body><%request.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");String uname=request.getParameter("uname");String upass=request.getParameter("upass");String phone=request.getParameter("phone");String email=request.getParameter("email");out.print("用户名:"+uname);out.print("密码:"+upass);out.print("手机号:"+phone);out.print("邮箱:"+email);out.print("<br/>恭喜,注册成功");%><form name="frm" method="post" action="index.jsp"><table><tr><td>点击此处返回登录</td><td><input type="submit" value="登录"></td></tr></table></form></body>
</html>

3.学生端查询成绩(StuScoresListSearch.jsp)

输入学号查询成绩

<form name="cx" action="doSearch.jsp">请输入学号:<input type="text" name="stunum"><input type="submit" value="查询"></form><form name="fanhui" action="index.jsp">点击此处返回登录:<input type="submit" value="返回"></form>

学生成绩查询执行显示界面(doSearch.jsp)

连接数据库,精确查询,查询出数据库表中的信息

<table border="1" align="center"><tr>  <th>id</th><th>学号</th><th>姓名</th><th>科目</th><th>成绩</th><th>班级成绩总排名</th><th>期末考试排名</th><th>是否挂科</th></tr><%String stunum=request.getParameter("stunum");if(stunum==null||stunum.equals("")){response.sendRedirect("StuScoresListSearch.jsp");}String CLS = "com.mysql.cj.jdbc.Driver";String URL = "jdbc:mysql://localhost:3306/stuscoremanager?useSSL=false&serverTimezone=UTC";String USER = "root";String PWD = "123456";try{Class.forName(CLS);Connection conn = DriverManager.getConnection(URL, USER, PWD);String sql = "select * from stuscoreslist where stunum='"+stunum+"'";PreparedStatement pStmt = conn.prepareStatement(sql);ResultSet rs = pStmt.executeQuery();while(rs.next()){out.print("<tr>");out.print("<td>"+rs.getInt("id")+"</td>");out.print("<td>"+rs.getString("stunum")+"</td>");out.print("<td>"+rs.getString("stuname")+"</td>");out.print("<td>"+rs.getString("course")+"</td>");out.print("<td>"+rs.getString("score")+"</td>");out.print("<td>"+rs.getString("paiming")+"</td>");out.print("<td>"+rs.getString("qimo")+"</td>");out.print("<td>"+rs.getString("guake")+"</td>");out.print("</tr>");}rs.close();rs=null;pStmt.close();pStmt=null;conn.close();conn=null;}catch(Exception ex){ex.printStackTrace();}%></table>

4.教师端

建立Dbutil类,连接关闭数据库,stuinfo类封装上数据库中表数据,Userdao类把成绩信息封装到list集合中,在servlet文件:StudentListServlet中调用session域,并把list信息存到session域,便于在stulist.jsp界面调用。

         stulist.jsp使用了EL表达式与jstl标签(也可不用,此方式为了期末考试可以全面复习),调用了session域存储的数据库表中的信息.

                                      教师端封装学生信息类(stuinfo):

public class stuinfo {private String id;private String stunum;private String stuname;private String course;private String score;private String paiming;private String qimo;private String guake;public String getId() {return id;}public void setId(String id) {this.id = id;}public String getStunum() {return stunum;}public void setStunum(String stunum) {this.stunum = stunum;}public String getStuname() {return stuname;}public void setStuname(String stuname) {this.stuname = stuname;}public String getCourse() {return course;}public void setCourse(String course) {this.course = course;}public String getScore() {return score;}public void setScore(String score) {this.score = score;}public String getPaiming() {return paiming;}public void setPaiming(String paiming) {this.paiming = paiming;}public String getQimo() {return qimo;}public void setQimo(String qimo) {this.qimo = qimo;}public String getGuake() {return guake;}public void setGuake(String guake) {this.guake = guake;}public stuinfo() {super();// TODO Auto-generated constructor stub}public stuinfo(String id, String stunum, String stuname, String course, String score, String paiming, String qimo,String guake) {super();this.id = id;this.stunum = stunum;this.stuname = stuname;this.course = course;this.score = score;this.paiming = paiming;this.qimo = qimo;this.guake = guake;}

Userdao类:

public class UserDao extends DbUtils  {public List<stuinfo> getAllUsers(){List<stuinfo> list =new ArrayList<stuinfo>();try {Class.forName("com.mysql.cj.jdbc.Driver");}catch(ClassNotFoundException e) {e.printStackTrace();        }try {conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/stuscoremanager?useSSL=false&serverTimezone=UTC", "root","123456");String sql = "select * from stuscoreslist ";pStmt=conn.prepareStatement(sql);rs=pStmt.executeQuery();while(rs.next()) {stuinfo item=new stuinfo();String id=rs.getString("id");String stunum=rs.getString("stunum");String stuname=rs.getString("stuname");String course=rs.getString("course");String score=rs.getString("score");String paiming=rs.getString("paiming");String qimo=rs.getString("qimo");String guake=rs.getString("guake");item.setId(id);item.setStunum(stunum);item.setStuname(stuname);item.setCourse(course);item.setScore(score);item.setPaiming(paiming);item.setQimo(qimo);item.setGuake(guake);list.add(item);}}catch(SQLException e) {e.printStackTrace();}return list;

                     教师端主页面(stulist.jsp):

<center><h2>登陆成功!欢迎登录教师端学生成绩管理系统</h2></center><table border="3" align="center"><tr><td colspan="9" align="center"><a href="scoresAdd.jsp">添加</a></td></tr><tr><th>id</th><th>学号</th><th>姓名</th><th>科目</th><th>成绩</th><th>班级成绩总排名</th><th>期末考试排名</th><th>是否挂科</th><th>操作</th></tr><!--此处调用session域  --><ly:forEach items="${sessionList}" var="stu"><tr><td>${stu.id}</td><td>${stu.stunum}</td><td>${stu.stuname}</td><td>${stu.course}</td><td>${stu.score}</td><td>${stu.paiming}</td><td>${stu.qimo}</td><td>${stu.guake}</td><td><a href="stuEdit.jsp?stunum=${stu.stunum}">修改</a><a href="stuDel.jsp?stunum=${stu.stunum}">删除</a></td></tr></ly:forEach></table>

封装学生信息,存储到session域的servlet(StudentListServlet):

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stub//response.getWriter().append("Served at: ").append(request.getContextPath());request.setCharacterEncoding("gbk");   // 处理请求中的中文乱码问题response.setContentType("text/html;charset=gbk");  // 处理响应中的中文乱码问题/*** 现在的Servlet 为 控制器来用,作用如下:*  1. 取得请求参数*  2. 根据请求参数,调用业务处理*  3. 根据处理结果,转向不同的前端页面(html, jsp)**/// 1. 要求获取学生信息列表 // 2. 调用业务UserDao dao = new UserDao();List<stuinfo> list = dao.getAllUsers();// 3 存入session域,使用session会话共享数据HttpSession session = request.getSession();// 在当前session域中的页面都可以使用这个值session.setAttribute("sessionList", list);   //域名,传递的值request.getRequestDispatcher("stulist.jsp").forward(request, response);   // 请求转发}

connection.jsp:为了增删改jsp连接数据库的代码jsp文件:

<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" pageEncoding="utf-8"%>
<!-- **数据库连接8.5mysql版本,增加时区字段-->
<%!private static String CLS = "com.mysql.cj.jdbc.Driver";private static String URL = "jdbc:mysql://localhost:3306/stuscoremanager?useSSL=false&serverTimezone=UTC";private static String USER = "root";private static String PWD = "123456";public static Connection conn = null;public static Statement stmt = null;public static PreparedStatement pStmt = null;public static ResultSet rs = null;public static void getConnection() {try {Class.forName("com.mysql.cj.jdbc.Driver");   conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/stuscoremanager?useSSL=false&serverTimezone=UTC", "root","123456");}catch(Exception ex) {ex.printStackTrace();}}public static void closeAll() {try {if(rs!=null) {rs.close();rs=null;}if(pStmt!=null) {pStmt.close();pStmt=null;}if(stmt!=null) {stmt.close();stmt=null;}if(conn!=null) {conn.close();conn=null;}}catch(Exception ex) {ex.printStackTrace();}}%>

5.教师端实现的添加功能,添加界面(scoresAdd.jsp):

<%@ include file="connection.jsp" %>
<script type="text/javascript">function chkData(){var  stunum = document.getElementById("stunum");var  stuname = document.getElementById("stuname");  var  course = document.getElementById("course");  var  score = document.getElementById("score"); var flag = false;if(stunum==""){alert("填写学号信息");stunum.focus();}else if(stuname.value==""){alert('请填写学生姓名信息。');stunum.focus();}else if(course.value==""){alert('请填写科目信息');course.focus();}else if(score.value==""){alert('请填写成绩信息');score.focus();}else{flag = true;}return flag;}</script>
</head>
<body style="background-image:url('img/scoreadd.jpg'); background-size:100% 100%;background-attachment:fixed">
<center><h2>学生成绩信息添加</h2>
</center>
<form name="tj" action="doscoresAdd.jsp" method="post"><table border="8" align="center"><tr><td>序号</td><td><input type="text" name="id" id="id"/></td></tr><tr><td>学号</td><td><input type="text" name="stunum" id="stunum"/></td></tr><tr><td>姓名</td><td><input type="text" name="stuname" id="stuname"/></td></tr><tr><td>科目</td><td><input type="text" name="course" id="course"/></td></tr><tr><td>成绩</td><td><input type="text" name="score" id="score"/></td></tr><tr><td>班级成绩总排名</td><td><input type="text" name="paiming" id="paiming" /></td></tr><tr><td>期末考试排名</td><td><input type="text" name="qimo" id="qimo" /></td></tr><tr><td>是否挂科</td><td><input type="text" name="guake" id="guake" /></td></tr><tr><td colspan="2" align="center"><input type="submit" value="添加" onclick="return chkData();"/></td></tr></form><form name="sc" action="add.jsp" method="post"><tr><td colspan="2" align="center"><input type="submit" value="返回"/></td></tr></form></table></body>
</html>

添加界面实现并显示数据界面(doscoresAdd.jsp):

<%@ include file="connection.jsp" %>
<!--成绩信息添加执行页面,并显示添加的信息  --><%response.setContentType("text/html;charset=utf-8");request.setCharacterEncoding("utf-8");String id=request.getParameter("id");String stunum=request.getParameter("stunum");String stuname=request.getParameter("stuname");String course=request.getParameter("course");String score=request.getParameter("score");String paiming=request.getParameter("paiming");String qimo=request.getParameter("qimo");String guake=request.getParameter("guake");try{getConnection();String sql="insert into stuscoreslist(id,stunum,stuname,course,score,paiming,qimo,guake) values(?,?,?,?,?,?,?,?)";pStmt=conn.prepareStatement(sql);pStmt.setString(1,id);pStmt.setString(2,stunum);pStmt.setString(3,stuname);pStmt.setString(4,course);pStmt.setString(5,score);pStmt.setString(6,paiming);pStmt.setString(7,qimo);pStmt.setString(8,guake);int iRow =pStmt.executeUpdate();if(iRow>0){response.sendRedirect("StudenListServlet");}else{response.sendRedirect("scoresAdd.jsp");}}catch(Exception ex){ex.printStackTrace();}finally{closeAll();}%>

6.修改界面(stuEdit.jsp):

<%String stunum=request.getParameter("stunum");String id="";String stuname="";String course="";String score="";String paiming="";String qimo="";String guake="";try{getConnection();String sql="select * from stuscoreslist where stunum='"+stunum+"'";pStmt=conn.prepareStatement(sql);rs=pStmt.executeQuery();while(rs.next()){id=rs.getString("id");stunum=rs.getString("stunum");stuname=rs.getString("stuname");course=rs.getString("course");score=rs.getString("score");paiming=rs.getString("paiming");qimo=rs.getString("qimo");guake=rs.getString("guake");}}catch(Exception ex){ex.printStackTrace();}finally{closeAll();}%>
<!--使用readonly固定值,使其无法修改  -->
<form name="tj" action="doStuEdit.jsp" method="post"><table border="8" align="center"><tr><td>序号</td><td><input type="text" name="id" id="id" value="<%=id %>"/></td></tr><tr><td>学号</td><td><input type="text" name="stunum" id="stunum"  readonly="readonly" value="<%=stunum %>"/></td></tr><tr><td>姓名</td><td><input type="text" name="stuname" id="stuname" readonly="readonly" value="<%=stuname %>"/></td></tr><tr><td>科目</td><td><input type="text" name="course" id="course" value="<%=course %>"/></td></tr><tr><td>成绩</td><td><input type="text" name="score" id="score" value="<%=score%>"/></td></tr><tr><td>班级成绩总排名</td><td><input type="text" name="paiming" id="paiming" value="<%=paiming%>"/></td></tr><tr><td>期末考试排名</td><td><input type="text" name="qimo" id="qimo" value="<%=qimo%>"/></td></tr><tr><td>是否挂科</td><td><input type="text" name="guake" id="guake" value="<%=guake%>"/></td></tr><tr><td colspan="2" align="center"><input type="submit" value="修改" onclick="return chkData();"/></td></tr></form><form name="sc" action="stulist.jsp" method="post"><tr><td colspan="2" align="center"><input type="submit" value="返回"/></td></tr></form></table>

修改界面执行显示界面(doStuEdit.jsp)

<%response.setContentType("text/html;charset=utf-8");request.setCharacterEncoding("utf-8");String id=request.getParameter("id");String stunum=request.getParameter("stunum");String stuname=request.getParameter("stuname");String course=request.getParameter("course");String score=request.getParameter("score");String paiming=request.getParameter("paiming");String qimo=request.getParameter("qimo");String guake=request.getParameter("guake");try{getConnection();String sql="update  stuscoreslist set id=?,course=?,score=?,paiming=?,qimo=?,guake=? where stunum='"+stunum+"' and stuname='"+stuname+"' ";pStmt=conn.prepareStatement(sql);pStmt.setString(1,id);pStmt.setString(2,course);pStmt.setString(3,score);pStmt.setString(4,paiming);pStmt.setString(5,qimo);pStmt.setString(6,guake);int iRow =pStmt.executeUpdate();if(iRow>0){response.sendRedirect("StudenListServlet");}else{response.sendRedirect("stuEdit.jsp?stunum="+stunum);}}catch(Exception ex){ex.printStackTrace();}finally{closeAll();}%>

7.删除界面(stuDel.jsp):

<%String stunum=request.getParameter("stunum");String id="";String stuname="";String course="";String score="";String paiming="";String qimo="";String guake="";try{getConnection();String sql="select * from stuscoreslist where stunum='"+stunum+"'";pStmt=conn.prepareStatement(sql);rs=pStmt.executeQuery();while(rs.next()){id=rs.getString("id");stunum=rs.getString("stunum");stuname=rs.getString("stuname");course=rs.getString("course");score=rs.getString("score");paiming=rs.getString("paiming");qimo=rs.getString("qimo");guake=rs.getString("guake");}}catch(Exception ex){ex.printStackTrace();}finally{closeAll();}%>
<form name="sc" action="doStuDelate.jsp" method="post"><table border="8" align="center"><tr><td>序号</td><td><input type="text" name="id" id="id" readonly="readonly" value="<%=id %>"/></td></tr><tr><td>学号</td><td><input type="text" name="stunum" id="stunum"  readonly="readonly" value="<%=stunum %>"/></td></tr><tr><td>姓名</td><td><input type="text" name="stuname" id="stuname" readonly="readonly" value="<%=stuname %>"/></td></tr><tr><td>科目</td><td><input type="text" name="course" id="course" readonly="readonly" value="<%=course %>"/></td></tr><tr><td>成绩</td><td><input type="text" name="score" id="score" readonly="readonly" value="<%=score%>"/></td></tr><tr><td>班级成绩总排名</td><td><input type="text" name="paiming" id="paiming" readonly="readonly" value="<%=paiming%>"/></td></tr><tr><td>期末考试排名</td><td><input type="text" name="qimo" id="qimo" readonly="readonly" value="<%=qimo%>"/></td></tr><tr><td>是否挂科</td><td><input type="text" name="guake" id="guake" readonly="readonly" value="<%=guake%>"/></td></tr><tr><td colspan="2" align="center"><input type="submit" value="删除" onclick="return chkData();"/></td></tr></form><form name="sc" action="stulist.jsp" method="post"><tr><td colspan="2" align="center"><input type="submit" value="返回"/></td></tr></form></table>

                    删除界面执行并显示删除后的界面(doStuDel.jsp):

<!--成绩信息删除执行页面,并显示删除后的信息  --><%response.setContentType("text/html;charset=utf-8");request.setCharacterEncoding("utf-8");String id=request.getParameter("id");String stunum=request.getParameter("stunum");String stuname=request.getParameter("stuname");String course=request.getParameter("course");String score=request.getParameter("score");String paiming=request.getParameter("paiming");String qimo=request.getParameter("qimo");String guake=request.getParameter("guake");try{getConnection();String sql="delete from stuscoreslist where stunum=?";pStmt=conn.prepareStatement(sql);pStmt.setString(1,stunum);int iRow =pStmt.executeUpdate();if(iRow>0){response.sendRedirect("StudenListServlet");}else{response.sendRedirect("stuDel.jsp");}}catch(Exception ex){ex.printStackTrace();}finally{closeAll();}%>

五、系统运行截图选取:

1.主页面

学生注册界面:

学生查询:

结果显示:

教师端主界面:

添加:

删除:

源码:javaweb期末课程设计适于初学者,增删改查,Javabean,mysql,el,jstl,jsp,servlet_javaweb期末课程设计-Web开发文档类资源-CSDN下载

java web期末课程设计 学生成绩管理系统(mysql,jstl+el,Javabean)+增删改查,session域+servlet(基础易理解)相关推荐

  1. ★C语言期末课程设计★——学生成绩管理系统(完整项目+源代码+详细注释)

    学生成绩管理系统 目录 学生成绩管理系统 一.描述 二.设计目的 三.系统分析

  2. MFC课程设计 --学生成绩管理系统

    MFC课程设计 ,C++课程设计 --学生成绩管理系统 ps:因为课设完成的过程大家都不太一样,以下的代码仅供学习一下在MFC下各个控件的用法,有问题欢迎留言讨论. 实验目的 使用MFC类库编制应用程 ...

  3. c语言课程设计查找分数与删除元素,c语言课程设计学生成绩管理系统

    <c语言课程设计学生成绩管理系统>由会员分享,可在线阅读,更多相关<c语言课程设计学生成绩管理系统(31页珍藏版)>请在人人文库网上搜索. 1.河南理工大学计算机科学与技术学院 ...

  4. C语言成绩统计源代码,C语言课程设计学生成绩管理系统+源码

    <C语言课程设计学生成绩管理系统+源码>由会员分享,可在线阅读,更多相关<C语言课程设计学生成绩管理系统+源码(25页珍藏版)>请在人人文库网上搜索. 1.简易教学管理系统的设 ...

  5. C语言学生成绩管理设计总结,C语言课程设计学生成绩管理系统个人总结

    C语言课程设计学生成绩管理系统个人总结 C语言课程设计--学生成绩管理系统 个人心得体会 (徐州工程学院 14计嵌1班 07组 张凯) 这一周以来的课程设计,不仅让我明白了C语言的确是一门很有用的,但 ...

  6. 课程设计——学生成绩管理系统 C语言

    课程设计--学生成绩管理系统 基本要求: 1.程序功能 编程实现一个基础的成绩管理系统. 2.设计目的 通过本程序综合掌握结构体类型.指针.函数.文件等知识的综合使用. 3.功能要求(可扩充功能) ( ...

  7. 学生成绩统计c语言课程设计,学生成绩管理系统-C语言课程设计

    记一次课程设计作业 学生成绩管理系统#include #include #include #include /* 学生成绩管理系统介绍 2017C语言课程设计  202160936 1.支持将数据保存 ...

  8. c语言学生成绩管理系统课设作业,C语言课程设计——学生成绩管理系统

    摘 要 学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段.但一直以来人们使用传统人工的方式 ...

  9. 大一上学期C++课程设计——学生成绩管理系统(QT项目)

    这里是一个大一的萌新!仅做学习分享 工程文件在评论区置顶!! 近期整理了一下大一上学期的课程设计报告作为学习总结,使用的软件是Qt Creator,主界面效果如下图 ----------以下为课程设计 ...

最新文章

  1. 随想_8_Windows_XP_Explorer_错误
  2. 北漂经历 | 我在北京这几年
  3. 配置Yarn-Resourcemanager HA
  4. tp3.2 连接两个数据库
  5. VLC播放器web插件接口(Part2)
  6. Python-Matplotlib绘制简单图像
  7. 安全开发之碰撞检测与伤害计算逻辑
  8. 使用 Apache Atlas 进行数据治理
  9. 阿里联合学界开源大型3D场景数据集,6813个户型,几何与纹理细节丰富
  10. JDK1.8 HashSet
  11. mac下安装node.js步骤
  12. Mount 挂载错误mount:block device /dev/sr0 is write – protected , mounting read-only
  13. Python高性能编程指南大纲
  14. Grid++Report——打印功能
  15. 研究validation插件到现在的感受
  16. python turtle菜鸟教程_Python 基础教程
  17. 计算机硬盘坏道有什么特点,硬盘坏道对电脑会造成什么影响
  18. main()打成mian()的后果,切记小心
  19. 异地容灾系统方案设计与分析
  20. Leet_Code_1

热门文章

  1. 只要100行代码,实现文本编辑器中的草稿箱功能
  2. 分分钟带你读懂-ButterKnife-的源码
  3. 一个强大好用的音视频工具,ffmpeg
  4. [每日一题]0:每日一题汇总
  5. oracle中日期计算
  6. No configuration found in the configured sources
  7. IDBDatabase的数据库操作
  8. SX126x-工作模式分析
  9. mysql 的indexof函数
  10. 聚观早报 | 马斯克或将卸任推特CEO;小米内部人士回应年底裁员