<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      課程小系統開發

      首先,我們需要創建一個數據庫表來存儲課程信息。在 MySQL 中,可以使用以下 SQL 語句創建一個名為 courses 的表:
      -- 創建數據庫
      CREATE DATABASE IF NOT EXISTS course_management;
      USE course_management;

      -- 創建課程表
      CREATE TABLE courses (
      id INT AUTO_INCREMENT PRIMARY KEY,
      course_name VARCHAR(255) NOT NULL UNIQUE,
      teacher_name VARCHAR(50) NOT NULL,
      class_location VARCHAR(255) NOT NULL
      );
      上述代碼創建了一個名為 course_management 的數據庫,并在其中創建了一個 courses 表。courses 表包含四個字段:
      id:課程的唯一標識,自增主鍵。
      course_name:課程名稱,不允許為空,且必須唯一。
      teacher_name:任課教師姓名,不允許為空。
      class_location:上課地點,不允許為空。
      2. Idea 開發過程
      2.1 創建 Maven 項目
      打開 IntelliJ IDEA,選擇 File -> New -> Project,在左側選擇 Maven,然后點擊 Next,按照提示完成項目創建。
      2.2 添加依賴
      在 pom.xml 文件中添加 MySQL 驅動和 Servlet 依賴:

      <dependencies>
          <!-- MySQL 驅動 -->
          <dependency>
              <groupId>mysql</groupId>
              <artifactId>mysql-connector-java</artifactId>
              <version>8.0.26</version>
          </dependency>
          <!-- Servlet API -->
          <dependency>
              <groupId>javax.servlet</groupId>
              <artifactId>javax.servlet-api</artifactId>
              <version>4.0.1</version>
              <scope>provided</scope>
          </dependency>
      </dependencies>
      

      2.3 創建 Java 類和 JSP 頁面
      創建 Java 類:在 src/main/java 目錄下創建包和類,用于處理課程信息的添加邏輯。
      創建 JSP 頁面:在 src/main/webapp 目錄下創建 JSP 頁面,用于用戶輸入課程信息。
      3. Java 代碼實現
      3.1 創建 Course 類
      在 src/main/java 目錄下創建 com.example.course 包,并在該包下創建 Course 類,用于封裝課程信息:

      package com.example.course;
      
      public class Course {
          private String courseName;
          private String teacherName;
          private String classLocation;
      
          public Course(String courseName, String teacherName, String classLocation) {
              this.courseName = courseName;
              this.teacherName = teacherName;
              this.classLocation = classLocation;
          }
      
          public String getCourseName() {
              return courseName;
          }
      
          public String getTeacherName() {
              return teacherName;
          }
      
          public String getClassLocation() {
              return classLocation;
          }
      }
      

      3.2 創建 CourseDAO 類
      在 com.example.course 包下創建 CourseDAO 類,用于與數據庫交互,添加課程信息:

      package com.example.course;
      
      import java.sql.Connection;
      import java.sql.DriverManager;
      import java.sql.PreparedStatement;
      import java.sql.SQLException;
      
      public class CourseDAO {
          private static final String DB_URL = "jdbc:mysql://localhost:3306/course_management";
          private static final String DB_USER = "root";
          private static final String DB_PASSWORD = "password";
      
          public boolean addCourse(Course course) {
              String sql = "INSERT INTO courses (course_name, teacher_name, class_location) VALUES (?,?,?)";
              try (Connection conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
                   PreparedStatement pstmt = conn.prepareStatement(sql)) {
                  pstmt.setString(1, course.getCourseName());
                  pstmt.setString(2, course.getTeacherName());
                  pstmt.setString(3, course.getClassLocation());
                  int rowsInserted = pstmt.executeUpdate();
                  return rowsInserted > 0;
              } catch (SQLException e) {
                  e.printStackTrace();
                  return false;
              }
          }
      }
      

      3.3 創建 CourseServlet 類
      在 com.example.course 包下創建 CourseServlet 類,用于處理用戶提交的課程信息:

      package com.example.course;
      
      import javax.servlet.ServletException;
      import javax.servlet.annotation.WebServlet;
      import javax.servlet.http.HttpServlet;
      import javax.servlet.http.HttpServletRequest;
      import javax.servlet.http.HttpServletResponse;
      import java.io.IOException;
      import java.io.PrintWriter;
      
      @WebServlet("/addCourse")
      public class CourseServlet extends HttpServlet {
          private static final String[] TEACHERS = {"王建民", "劉立嘉", "劉丹", "楊子光", "張云霞", "武永亮", "高飛", "孫靜", "黃榮峰"};
          private static final String[] LOCATIONS = {"一教", "二教", "三教", "基教"};
      
          @Override
          protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
              response.setContentType("text/html;charset=UTF-8");
              PrintWriter out = response.getWriter();
      
              String courseName = request.getParameter("courseName");
              String teacherName = request.getParameter("teacherName");
              String classLocation = request.getParameter("classLocation");
      
              // 檢查課程名稱是否重復,這里簡單假設添加失敗就是重復
              Course course = new Course(courseName, teacherName, classLocation);
              CourseDAO courseDAO = new CourseDAO();
      
              // 檢查任課教師是否合法
              boolean isTeacherValid = false;
              for (String teacher : TEACHERS) {
                  if (teacher.equals(teacherName)) {
                      isTeacherValid = true;
                      break;
                  }
              }
      
              // 檢查上課地點是否合法
              boolean isLocationValid = false;
              for (String location : LOCATIONS) {
                  if (classLocation.startsWith(location)) {
                      isLocationValid = true;
                      break;
                  }
              }
      
              if (!isTeacherValid) {
                  out.println("<script>alert('任課教師信息不合法,請重新錄入'); window.history.back();</script>");
              } else if (!isLocationValid) {
                  out.println("<script>alert('上課地點信息不合法,請重新錄入'); window.history.back();</script>");
              } else {
                  if (courseDAO.addCourse(course)) {
                      out.println("<script>alert('課程信息添加成功'); window.location.href='index.jsp';</script>");
                  } else {
                      out.println("<script>alert('課程名稱重復,重新錄入'); window.history.back();</script>");
                  }
              }
          }
      }
      

      3.4 創建 JSP 頁面
      在 src/main/webapp 目錄下創建 index.jsp 頁面,用于用戶輸入課程信息:

      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
      <!DOCTYPE html>
      <html>
      <head>
          <meta charset="UTF-8">
          <title>添加課程信息</title>
      </head>
      <body>
          <h1>添加課程信息</h1>
          <form action="addCourse" method="post">
              <label for="courseName">課程名稱:</label>
              <input type="text" id="courseName" name="courseName" required><br><br>
              <label for="teacherName">任課教師:</label>
              <input type="text" id="teacherName" name="teacherName" required><br><br>
              <label for="classLocation">上課地點:</label>
              <input type="text" id="classLocation" name="classLocation" required><br><br>
              <input type="submit" value="提交">
          </form>
      </body>
      </html>
      
      posted @ 2025-03-11 22:00  霸王雞  閱讀(37)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 丽江市| 成人亚洲狠狠一二三四区| 亚洲天堂精品一区二区| 正宁县| 大陆一级毛片免费播放| 国产成人综合久久精品下载| 国产一区二区三区在线观看免费 | 国产无遮挡无码视频在线观看 | 国产女人被狂躁到高潮小说| 国产老熟女国语免费视频| 国产精品自产在线观看一| 少妇久久久被弄到高潮| 亚洲AV无码秘?蜜桃蘑菇| 妓女妓女一区二区三区在线观看| 精品一区二区三区在线播放视频| 亚洲夂夂婷婷色拍ww47| 国产一区二区日韩在线| 中文字幕无码久久精品| 四虎精品视频永久免费| 国产欧美日韩精品第二区| 国产精品高清一区二区不卡| 国内精品自线在拍| 天堂资源国产老熟女在线| 国产a网站| 亚洲最大福利视频网| 国产精品免费观看色悠悠| 办公室强奷漂亮少妇同事| 国产一区二区不卡在线| 国产成人午夜精品影院| 国产二区三区不卡免费| 亚洲午夜福利网在线观看| 岳普湖县| 精品国产亚洲区久久露脸| 国产精品人成视频免| 无码人妻精品一区二区三区下载| 人妻中文字幕精品系列| 不卡一区二区国产在线| 亚洲乱码一二三四区国产| 国产超碰无码最新上传| 成人乱码一区二区三区四区 | 99中文字幕精品国产|