• 基于学生成绩管理系统(附源代码及数据库)


    基于Ecplise,jsp的学生成绩管理系统

    目录

    登录页面

    系统主页

    管理员账号管理

    学生查询

    课程管理

    成绩管理

    后台数据库

    源代码下载(含数据库)

    毕设项目专栏


    分为以下四大板块:

    系统用户管理:   包含管理员账号管理,教师添加,教师查询,学生添加,学生查询,修改密码等模块。

    课程管理:对课程信息列表的curd,模糊查询,导出excel等操作。

    成绩管理:对学生成绩的curd,模糊查询,导出excel等操作。

    版权信息:版权所属信息。

    管理员登录:具有最高权限,所有功能均具备。

    教师登录:教师有个人资料管理,学生管理,课程管理,成绩管理,,版权信息五大板块。

    学生登录:学生有个人资料管理,课程管理,成绩管理,版权信息四大板块。

    登录页面

    1. <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
    2. <%@page import="util.Info"%>
    3. <%@page import="dao.CommDAO"%>
    4. <%@page import="util.PageManager"%>
    5. <html>
    6. <head>
    7. <title>学生成绩管理系统</title>
    8. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    9. <style type="text/css">
    10. <!--
    11. body {
    12. margin-left: 0px;
    13. margin-top: 0px;
    14. margin-right: 0px;
    15. margin-bottom: 0px;
    16. background-repeat: repeat-x;
    17. background-color: #3C8395;
    18. }
    19. .STYLE9 {
    20. color: #0000CC;
    21. font-size: 12px
    22. }
    23. .STYLE8 {
    24. color: #0033CC
    25. }
    26. input {
    27. border-radius: 3px;
    28. border: 1px solid #000;
    29. }
    30. -->
    31. </style>
    32. </head>
    33. <script type="text/javascript">
    34. <%
    35. String error = (String)request.getAttribute("error");
    36. if(error!=null)
    37. {
    38. %>
    39. alert("用户名或密码错误");
    40. <%}%>
    41. <%
    42. String random = (String)request.getAttribute("random");
    43. if(random!=null)
    44. {
    45. %>
    46. alert("验证码错误");
    47. <%}%>
    48. popheight = 39;
    49. function check() {
    50. if (document.form1.username.value == ""
    51. || document.form1.pwd.value == ""
    52. || document.form1.pagerandom.value == "") {
    53. alert('请输入完整');
    54. return false;
    55. }
    56. }
    57. function loadimage() {
    58. document.getElementById("randImage").src = "image.jsp?" + Math.random();
    59. }
    60. </script>
    61. <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
    62. <table width="1024" height="728" border="0" align="center"
    63. cellpadding="0" cellspacing="0" background="images/login.jpg"
    64. id="__01">
    65. <tr>
    66. <td height="183" colspan="3"><table width="64%" height="56"
    67. border="0" align="center" cellpadding="0" cellspacing="0">
    68. <tr>
    69. <td height="56"><div
    70. style="text-shadow: #CCCCCC 3px 0 0, #33CC33 0 1px 0, #33CC33 1px 0 0, #33CC33 0 -1px 0; font-size: 38px;"
    71. align="center">学生成绩管理系统</div></td>
    72. </tr>
    73. </table></td>
    74. </tr>
    75. <tr>
    76. <td width="314" rowspan="2">&nbsp;</td>
    77. <td width="352" height="275" valign="bottom"><form
    78. action="jspmxscjglxthsg3858A9?ac=adminlogin&a=a" method="post"
    79. name="form1" style="display: inline">
    80. <table width="205" border="0" align="center" cellpadding="0"
    81. cellspacing="0">
    82. <tr>
    83. <td width="44" height="30"><span class="STYLE9">用户:</span></td>
    84. <td height="30" colspan="2"><input name="username"
    85. type="text" id="username"
    86. style="width: 100px; height: 16px; border: solid 1px #000000; color: #666666"></td>
    87. </tr>
    88. <tr>
    89. <td height="30"><span class="STYLE9">密码:</span></td>
    90. <td height="30" colspan="2"><input name="pwd"
    91. type="password" id="pwd"
    92. style="width: 100px; height: 16px; border: solid 1px #000000; color: #666666"></td>
    93. </tr>
    94. <tr>
    95. <td height="30"><span class="STYLE9">权限:</span></td>
    96. <td height="30" colspan="2"><select name="cx" id="cx">
    97. <option value="管理员">管理员</option>
    98. <option value="学生">学生</option>
    99. <option value="教师">教师</option>
    100. <!--quxanxiaxndexnglxu-->
    101. </select></td>
    102. </tr>
    103. <tr>
    104. <td height="30"><span class="STYLE9">验证码:</span></td>
    105. <td width="59" height="30"><input name="pagerandom"
    106. type="text" id="pagerandom"
    107. style="height: 20px; border: solid 1px #000000; color: #666666; width: 50px" />
    108. <td width="102"><a href="javascript:loadimage();"><img
    109. alt="看不清请点我!" name="randImage" id="randImage" src="image.jsp"
    110. width="60" height="20" border="1" align="absmiddle"> </a></td>
    111. </tr>
    112. <tr>
    113. <td height="30" colspan="3"><input type="submit"
    114. name="Submit" value="登陆" onClick="return check();"
    115. style="background: url(images/the_formbtn.gif) no-repeat; color: #000000; width: 80px; height: 24px; border: 0px; line-height: 24px; font-size: 12px; margin-right: 5px; cursor: pointer">
    116. <input type="reset" name="Submit2" value="重置"
    117. style="background: url(images/the_formbtn.gif) no-repeat; color: #000000; width: 80px; height: 24px; border: 0px; line-height: 24px; font-size: 12px; margin-right: 5px; cursor: pointer"></td>
    118. </tr>
    119. </table>
    120. </form></td>
    121. <td width="336" rowspan="2">&nbsp;</td>
    122. </tr>
    123. <tr>
    124. <td>&nbsp;</td>
    125. </tr>
    126. </table>
    127. </body>
    128. </html>

    系统主页

    1. <%@ page language="java" pageEncoding="gb2312"%>
    2. <html>
    3. <head>
    4. <title>学生成绩管理系统--管理中心</title>
    5. </head>
    6. <frameset rows="36,*" cols="*" framespacing="0" frameborder="no"
    7. border="0">
    8. <frame src="top.jsp" name="topFrame" id="topFrame" title="topFrame"
    9. scrolling="NO" noresize />
    10. <frameset rows="*" cols="220,*" framespacing="0" frameborder="no"
    11. border="0" id="mainframe">
    12. <frame src="mygo.jsp" name="left" id="left" title="left" />
    13. <frame src="sy.jsp" name="right" id="right" title="right" />
    14. </frameset>
    15. </frameset>
    16. <noframes>
    17. </noframes>
    18. </html>

    管理员账号管理

    1. <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
    2. <%@page import="util.Info"%>
    3. <%@page import="dao.CommDAO"%>
    4. <%@page import="util.PageManager"%>
    5. <%
    6. if (request.getSession().getAttribute("username") == null) {
    7. out.print("<script>javascript:alert('对不起,您已超时或未登陆,请重新进行登陆!');window.close();</script>");
    8. out.close();
    9. } else {
    10. if (request.getSession().getAttribute("cx").equals("超级管理员")) {
    11. } else {
    12. out.print("<script>javascript:alert('对不起,您无权操作此模块!');history.back();</script>");
    13. out.close();
    14. }
    15. }
    16. %>
    17. <html>
    18. <head>
    19. <title>管理员用户管理</title>
    20. <link rel="stylesheet" href="css.css" type="text/css">
    21. </head>
    22. <%
    23. new CommDAO().delete(request, "allusers");
    24. HashMap ext = new HashMap();
    25. ext.put("cx", "普通管理员");
    26. new CommDAO().insert(request, response, "allusers", ext, true, false, "");
    27. %>
    28. <body>
    29. <form action="yhzhgl.jsp?f=f" method="post" name="f1"
    30. onsubmit="return checkform();">
    31. <table width="100%" border="1" align="center" cellpadding="3"
    32. cellspacing="1" bordercolor="#00FFFF"
    33. style="border-collapse: collapse">
    34. <tr>
    35. <td width="200">用户名:</td>
    36. <td><input name="username" type="text" id="username"
    37. onblur='checkform()' /> <label id='clabelusername' /> *</td>
    38. </tr>
    39. <tr>
    40. <td width="200">密码:</td>
    41. <td><input name="pwd" type="password" id="pwd"
    42. onblur='checkform()' /> <label id='clabelpwd' /> *</td>
    43. </tr>
    44. <tr>
    45. <td width="200">确认密码:</td>
    46. <td><input name="pwd2" type="password" id="pwd2"
    47. onblur='checkform()' /> <label id='clabelpwd2' /> *</td>
    48. </tr>
    49. <tr>
    50. <td width="200">&nbsp;</td>
    51. <td><input name="Submit" type="submit" value="提交" /> <input
    52. name="Submit2" type="reset" value="重置" /></td>
    53. </tr>
    54. </table>
    55. </form>
    56. <p>已有管理员列表:</p>
    57. <table width="100%" border="1" align="center" cellpadding="3"
    58. cellspacing="1" bordercolor="#00FFFF"
    59. style="border-collapse: collapse">
    60. <tr>
    61. <td bgcolor="A4B6D7">序号</td>
    62. <td bgcolor="A4B6D7">用户名</td>
    63. <td bgcolor="A4B6D7">密码</td>
    64. <td bgcolor="A4B6D7">权限</td>
    65. <td bgcolor="A4B6D7">添加时间</td>
    66. <td bgcolor="A4B6D7">操作</td>
    67. </tr>
    68. <%
    69. int i = 0;
    70. for (HashMap map : new CommDAO().select("select * from allusers order by id desc ")) {
    71. i++;
    72. %>
    73. <tr>
    74. <td><%=i%></td>
    75. <td><%=map.get("username")%></td>
    76. <td><%=map.get("pwd")%></td>
    77. <td><%=map.get("cx")%></td>
    78. <td><%=map.get("addtime")%></td>
    79. <td><a href="yhzhgl.jsp?scid=<%=map.get("id")%>"
    80. onClick="return confirm('真的要删除?')">删除</a></td>
    81. </tr>
    82. <%
    83. }
    84. %>
    85. </table>
    86. </body>
    87. </html>
    88. <script language=javascript src='js/My97DatePicker/WdatePicker.js'></script>
    89. <script language=javascript src='js/popup.js'></script>
    90. <script language=javascript src='js/ajax.js'></script>
    91. <%@page import="java.util.ArrayList"%>
    92. <%@page import="java.util.HashMap"%>
    93. <script language=javascript>
    94. function checkform(){
    95. var usernameobj = document.getElementById("username");
    96. if(usernameobj.value==""){
    97. document.getElementById("clabelusername").innerHTML="&nbsp;&nbsp;<font color=red>请输入用户名</font>";
    98. return false;
    99. }else{
    100. document.getElementById("clabelusername").innerHTML=" ";
    101. }
    102. var usernameobj = document.getElementById("username");
    103. if(usernameobj.value!=""){
    104. var ajax = new AJAX();
    105. ajax.post("factory/checkno.jsp?table=allusers&col=username&value="+usernameobj.value+"&checktype=insert&ttime=<%=Info.getDateStr()%>
    106. ")
    107. var msg = ajax.getValue();
    108. if (msg.indexOf('Y') > -1) {
    109. document.getElementById("clabelusername").innerHTML = "&nbsp;&nbsp;<font color=red>用户名已存在</font>";
    110. return false;
    111. } else {
    112. document.getElementById("clabelusername").innerHTML = " ";
    113. }
    114. }
    115. var pwdobj = document.getElementById("pwd");
    116. if (pwdobj.value == "") {
    117. document.getElementById("clabelpwd").innerHTML = "&nbsp;&nbsp;<font color=red>请输入密码</font>";
    118. return false;
    119. } else {
    120. document.getElementById("clabelpwd").innerHTML = " ";
    121. }
    122. var pwd2obj = document.getElementById("pwd2");
    123. if (pwd2obj.value == "") {
    124. document.getElementById("clabelpwd2").innerHTML = "&nbsp;&nbsp;<font color=red>请再次输入密码</font>";
    125. return false;
    126. } else {
    127. document.getElementById("clabelpwd2").innerHTML = " ";
    128. }
    129. if (pwd2obj.value != pwdobj.value) {
    130. document.getElementById("clabelpwd2").innerHTML = "&nbsp;&nbsp;<font color=red>两次密码输入不一致</font>";
    131. return false;
    132. } else {
    133. document.getElementById("clabelpwd2").innerHTML = " ";
    134. }
    135. return true;
    136. }
    137. popheight = 450;
    138. </script>

    学生查询

    1. <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
    2. <%@page import="util.Info"%>
    3. <%@page import="dao.CommDAO"%>
    4. <%@page import="util.PageManager"%>
    5. <html>
    6. <head>
    7. <title>学生</title>
    8. <LINK href="css.css" type=text/css rel=stylesheet>
    9. <script type="text/javascript" src="js/My97DatePicker/WdatePicker.js"
    10. charset="gb2312"></script>
    11. </head>
    12. <body>
    13. <p>已有学生列表:</p>
    14. <form name="form1" id="form1" method="post" action="">
    15. 搜索: 学号:<input name="xuehao" type="text" id="xuehao"
    16. style='border: solid 1px #000000; color: #666666' size="12" /> 姓名:<input
    17. name="xingming" type="text" id="xingming"
    18. style='border: solid 1px #000000; color: #666666' size="12" /> 联系手机:<input
    19. name="lianxishouji" type="text" id="lianxishouji"
    20. style='border: solid 1px #000000; color: #666666' size="12" /> <input
    21. type="submit" name="Submit" value="查找"
    22. style='border: solid 1px #000000; color: #666666' /> <input
    23. type="button" name="Submit2" value="导出EXCEL"
    24. style='border: solid 1px #000000; color: #666666'
    25. onClick="javascript:location.href='xuesheng_listxls.jsp';" />
    26. </form>
    27. <table width="100%" border="1" align="center" cellpadding="3"
    28. cellspacing="1" bordercolor="00FFFF" style="border-collapse: collapse">
    29. <tr>
    30. <td width="30" align="center" bgcolor="CCFFFF">序号</td>
    31. <td bgcolor='#CCFFFF'>学号</td>
    32. <td bgcolor='#CCFFFF'>密码</td>
    33. <td bgcolor='#CCFFFF'>姓名</td>
    34. <td bgcolor='#CCFFFF' width='40' align='center'>性别</td>
    35. <td bgcolor='#CCFFFF'>联系手机</td>
    36. <td bgcolor='#CCFFFF'>地址</td>
    37. <td width="138" align="center" bgcolor="CCFFFF">添加时间</td>
    38. <td width="60" align="center" bgcolor="CCFFFF">操作</td>
    39. </tr>
    40. <%
    41. new CommDAO().delete(request, "xuesheng");
    42. String url = "xuesheng_list.jsp?1=1";
    43. String sql = "select * from xuesheng where 1=1";
    44. if (request.getParameter("xuehao") == "" || request.getParameter("xuehao") == null) {
    45. } else {
    46. sql = sql + " and xuehao like '%" + request.getParameter("xuehao") + "%'";
    47. }
    48. if (request.getParameter("xingming") == "" || request.getParameter("xingming") == null) {
    49. } else {
    50. sql = sql + " and xingming like '%" + request.getParameter("xingming") + "%'";
    51. }
    52. if (request.getParameter("lianxishouji") == "" || request.getParameter("lianxishouji") == null) {
    53. } else {
    54. sql = sql + " and lianxishouji like '%" + request.getParameter("lianxishouji") + "%'";
    55. }
    56. sql += " order by id desc";
    57. ArrayList<HashMap> list = PageManager.getPages(url, 15, sql, request);
    58. int i = 0;
    59. for (HashMap map : list) {
    60. i++;
    61. %>
    62. <tr>
    63. <td width="30" align="center"><%=i%></td>
    64. <td><%=map.get("xuehao")%></td>
    65. <td><%=map.get("mima")%></td>
    66. <td><%=map.get("xingming")%></td>
    67. <td align='center'><%=map.get("xingbie")%></td>
    68. <td><%=map.get("lianxishouji")%></td>
    69. <td><%=map.get("dizhi")%></td>
    70. <td width="138" align="center"><%=map.get("addtime")%></td>
    71. <td width="60" align="center"><a
    72. href="xuesheng_updt.jsp?id=<%=map.get("id")%>">修改</a> <a
    73. href="xuesheng_list.jsp?scid=<%=map.get("id")%>"
    74. onClick="return confirm('真的要删除?')">删除</a> <a
    75. href="xuesheng_detail.jsp?id=<%=map.get("id")%>">详细</a></td>
    76. </tr>
    77. <%
    78. }
    79. %>
    80. </table>
    81. <br> ${page.info }
    82. </body>
    83. </html>

    课程管理

    成绩管理

    后台数据库

    源代码下载(含数据库)

    https://download.csdn.net/download/m0_54925305/85414218

    毕设项目专栏

    https://blog.csdn.net/m0_54925305/category_11702151.html?spm=1001.2014.3001.5482


  • 相关阅读:
    STC - 官方库函数 - 串口操作修改
    PHP 在线学习平台系统mysql数据库web结构layUI布局apache计算机软件工程网页wamp
    前端菜鸡流水账日记 -- git管理工具(多版本)
    为脚本创建软连接到指定的PATH中,变为自定义命令程序
    Vue入门--vue的生命周期
    Excel做题记录——整数规划优化模型
    Springboot实现登录功能(token、redis、登录拦截器、全局异常处理)
    【Servlet】Servlet学习之基础篇
    85.(cesium之家)cesium模型在倾斜摄影上运动
    vue脚手架搭建2022年6月版本(保姆级)
  • 原文地址:https://blog.csdn.net/m0_54925305/article/details/124857710