學生成績管理系統(tǒng)(源碼地址在評論區(qū)需要的小伙伴可以看看,大二時做的,做得不太好)
一、實驗目的
為了更好的學習理解JavaWeb,創(chuàng)建了此系統(tǒng)。此系統(tǒng)可以幫助學習Java web基礎,特別是javaweb入門,此系統(tǒng)使用大部分Java web基礎知識。Java web課程設計聯系了前端的HTML、CSS、JAVASCRIPT、JSP等各項語言,同時緊密的將后臺開發(fā)的java語言和數據庫聯系在一起,從整體上實現了java web項目的認識與實踐。
二、實驗平臺
eclipse下的javaee,Tomcat服務器,mysql數據庫。
三、實驗主要內容
學生成績管理系統(tǒng),此系統(tǒng)使用開發(fā)模式2,使用Javabean與jsp結合的形式,封裝數據庫中數據,并由jsp顯示界面。使用servlet,根據登錄頁面?zhèn)鞯臄祿治鲇脩舻纳矸荩瑐魉偷讲煌缑?,在學生端界面使用精確查詢,學生輸入學號,查詢出各科成績及考試情況信息。教師端界面,javabean結合jsp,在servlet里,把數據庫表的信息存儲到session域中,在教師端主頁面使用EL表達式的形式調用了session域的表信息,教師端主頁面采用css,JavaScript等,顯示了學生考試信息,并實現了增刪改,鏈接到不同jsp中。
四、部分關鍵代碼實現:
1.用戶登錄,注冊功能:
登錄界面(index.jsp):
系統(tǒng)的主頁面,使用JavaScript,不輸入用戶名,密碼會進行頁面提示,學生身份使用任意注冊用戶名與密碼,教師身份輸入固定用戶名:“root”,密碼:"123456",從而進入LoginServlet,重定向判斷進入教師端還是學生端主頁面。
<%@ page language="java" contentType="text/html; charset=gbk"
pageEncoding="gbk"%>
<!--本系統(tǒng)使用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("請?zhí)顚懹脩裘畔ⅰ?);
uname.focus();
}else if(upass.value==""){
alert("請?zhí)顚懨艽a信息。");
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">歡迎登錄學生成績管理系統(tǒng)</div>
<div >
<div class="zhong-y"><form name="frm" method="post" action="LoginServlet">
<table border="1" class="blue" >
<tr>
<th colspan="2" class="blue">學生成績管理系統(tǒng)</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 stub
doGet(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('請?zhí)顚懹脩裘畔ⅰ?);
uname.focus();
}else if(upass.value==""){
alert('請?zhí)顚懨艽a信息。');
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"%>
<!--
注冊頁面執(zhí)行界面,
顯示注冊的信息
-->
<!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>
學生成績查詢執(zhí)行顯示界面(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>登陸成功!歡迎登錄教師端學生成績管理系統(tǒng)</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. 根據請求參數,調用業(yè)務處理
* 3. 根據處理結果,轉向不同的前端頁面(html, jsp)
**/
// 1. 要求獲取學生信息列表
// 2. 調用業(yè)務
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); // 請求轉發(fā)
}
? ? ? 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版本,增加時區(qū)字段
-->
<%!
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('請?zhí)顚憣W生姓名信息。');
stunum.focus();
}else if(course.value==""){
alert('請?zhí)顚懣颇啃畔?);
course.focus();
}else if(score.value==""){
alert('請?zhí)顚懗煽冃畔?);
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" %>
<!--成績信息添加執(zhí)行頁面,并顯示添加的信息 -->
<%
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>
? ? 修改界面執(zhí)行顯示界面(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>
? ? ? ? ? ? ? ? ? ? 刪除界面執(zhí)行并顯示刪除后的界面(doStuDel.jsp):
<!--成績信息刪除執(zhí)行頁面,并顯示刪除后的信息 -->
<%
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();
}
%>
五、系統(tǒng)運行截圖選?。?/h2>
? 1.主頁面
學生注冊界面:?
學生查詢:
?結果顯示:
?教師端主界面:
添加:
?刪除:
文章來源:http://www.zghlxwxcb.cn/news/detail-493231.html
源碼:javaweb期末課程設計適于初學者,增刪改查,Javabean,mysql,el,jstl,jsp,servlet_javaweb期末課程設計-Web開發(fā)文檔類資源-CSDN下載文章來源地址http://www.zghlxwxcb.cn/news/detail-493231.html
到了這里,關于java web期末課程設計 學生成績管理系統(tǒng)(mysql,jstl+el,Javabean)+增刪改查,session域+servlet(基礎易理解)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!