簡單的課程管理系統
阿新 • • 發佈:2018-12-09
語句 分享 page set zone submit 刪除 generate src
本題本質是數據庫與javaweb結合,輔以javabean和servlet。
(1)增加新課程
.java
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>添加首頁</title> </head> <body> <formid="form1" action="/stumessage/AServlet" method="post" onsubmit="return form1()"> <div> 課程名稱:<input type="text" id="lesson" name="lesson"/> </div> <div> 任課教師:<input type="text" id="teacher" name="teacher"/> </div> <div> 上課地點:<input type="text" id="classroom" name="classroom"/> </div> <div> <button type="submit" id="sub" value="提交">提交</button> </div> </form> <script type="text/javascript"> function form1(){ var lesson=document.getElementById("lesson"); var teacher=document.getElementById("teacher"); var classroom=document.getElementById("classroom"); if(lesson.value == ""){ alert("課程名稱不能為空!"); return false; } if(teacher.value == ""){ alert("任課老師不能為空!"); return false; } if(classroom.value == ""){ alert("上課地點不能為空!"); return false; } if(teacher.value != "王建民" && teacher.value != "王輝" && teacher.value != "劉丹" && teacher.value != "劉立嘉" && teacher.value != "楊子光"){ alert("任課老師只能在王建民,王輝,劉丹,劉立嘉,楊子光中選擇!!"); return false; } if(!/^基教/.test(classroom.value) && !/^一教/.test(classroom.value) && !/^二教/.test(classroom.value) && !/^三教/.test(classroom.value)){ alert("上課地點格式錯誤!!只能從基教,一教,二教,三教中選擇!!例:基教201"); return false; } else{ alert("添加成功!"); return true; } } </script> </body> </html>
package stuMessage;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;
import javax.servlet.ServletConfig;
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 Aservlet
*/
@WebServlet("/Aservlet")
public class Aservlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public Aservlet() {
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
System.out.println("doGet...");
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
request.setCharacterEncoding("utf-8"); //1
response.setContentType("text/html;charset=utf-8"); //2
response.setCharacterEncoding("utf-8"); //3
String lesson=request.getParameter("lesson");
String teacher=request.getParameter("teacher");
String classroom=request.getParameter("classroom");
/*
* 開始連接數據庫
*/
//驅動程序名
String driver = "com.mysql.jdbc.Driver";
//URL指向要訪問的數據庫名mydata
String url = "jdbc:mysql://localhost:3306/demo01?serverTimezone=GMT%2B8";
//MySQL配置時的用戶名
String user = "root";
//MySQL配置時的密碼
String password = "wtdWTD727398q";
//遍歷查詢結果集
try {
//加載驅動程序
Class.forName(driver);
//1.getConnection()方法,連接MySQL數據庫!!
Connection con = DriverManager.getConnection(url,user,password);
if(!con.isClosed())
System.out.println("Succeeded connecting to the Database!");
PreparedStatement psql;
//預處理添加數據,其中有兩個參數--“?”
psql = con.prepareStatement("insert into stumessage (lesson,teacher,classroom) " + "values(?,?,?)");
psql.setString(1, lesson); //設置參數1,創建id為3212的數據
psql.setString(2, teacher); //設置參數2,name 為王剛
psql.setString(3, classroom);
psql.executeUpdate();
con.close();
psql.close();
}catch(SQLException e) {
//數據庫連接失敗異常處理
e.printStackTrace();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally{
System.out.println("數據庫數據成功添加!!");
request.getRequestDispatcher("/NewFile.jsp").forward(request,response);
}
}
}
運行結果:
(2)刪除數據
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>刪除首頁</title> </head> <body> <form action="/stumessage/BServlet" method="post"> 課程名稱:<input type="text" id="lesson" name="lesson"/> <button type="submit" id="sub" value="提交">提交</button> </form> </body> </html>
package stuMessage; import java.io.IOException; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Scanner; 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 Bservlet */ @WebServlet("/Bservlet") public class Bservlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public Bservlet() { 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 } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub PrintWriter out = response.getWriter(); request.setCharacterEncoding("utf-8"); //1 response.setContentType("text/html;charset=utf-8"); //2 response.setCharacterEncoding("utf-8"); //3 String lesson = request.getParameter("lesson"); Scanner sc = new Scanner(System.in); //驅動程序名 String driver = "com.mysql.jdbc.Driver"; //URL指向要訪問的數據庫名mydata String url = "jdbc:mysql://localhost:3306/demo01?serverTimezone=GMT%2B8"; //MySQL配置時的用戶名 String user = "root"; //MySQL配置時的密碼 String password = "wtdWTD727398q"; //遍歷查詢結果集 try { //加載驅動程序 Class.forName(driver); Connection con = DriverManager.getConnection(url, user, password); if(!con.isClosed()) System.out.println("Succeeded connecting to the Database!"); //2.創建statement類對象,用來執行SQL語句!! Statement statement = con.createStatement(); //要執行的SQL語句 String sql = "select * from stumessage"; //3.ResultSet類,用來存放獲取的結果集!! ResultSet rs = statement.executeQuery(sql); PreparedStatement psql; psql = con.prepareStatement("delete from stumessage where lesson = ?"); while(rs.next()) { if(lesson.equals(rs.getString("lesson"))) { psql.setString(1, lesson); out.print("<html><head><body>"); out.print(rs.getString("lesson")+" "+rs.getString("teacher")+" "+rs.getString("classroom")); out.print("<button type=‘button‘ id=‘sub‘ value=‘提交‘ onclick=‘sub1()‘>刪除</button>"); out.print("<script type=‘text/javascript‘>"); out.print("function sub1(){"); out.print("alert(‘刪除成功!!‘)"); out.print("}"); out.print("</script>"); out.print("</body></head></html>"); psql.executeUpdate(); request.getRequestDispatcher("/NewFile.jsp").forward(request,response); break; }else if(rs.isLast()) { request.getRequestDispatcher("/fail.jsp").forward(request,response); } } rs.close(); con.close(); psql.close(); }catch(SQLException e) { //數據庫連接失敗異常處理 e.printStackTrace(); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } }
簡單的課程管理系統