1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO cáo CHUYÊN đề học PHẦN môn lập TRÌNH JAVA đề TÀI QUẢN lý LỊCH THỰC HÀNHCỦA GIẢNG VIÊN

34 23 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Quản Lý Lịch Thực Hành Của Giảng Viên
Tác giả Hoàng Thanh Tùng, Hoàng Đức Vinh
Người hướng dẫn Phương Vãn Cảnh
Trường học Điện Lực University
Chuyên ngành Công Nghệ Thông Tin
Thể loại báo cáo
Năm xuất bản 2021
Thành phố Hà Nội
Định dạng
Số trang 34
Dung lượng 115,64 KB

Cấu trúc

  • LỜI MỞ ĐẦU

  • CHƯƠNG 1: TỔNG QUAN VỀ LẬP TRÌNH JAVA

    • 1. Giới thiệu về ngôn ngữ Java

    • 2. Một số đặc trưng cơ bản của ngôn ngữ Java

      • 2.1. Tính đơn giản

      • 2.2. Tính hướng đối tượng (OOP)

      • 2.3. Tính mạnh mẽ

      • 2.4. Tính bảo mật

      • 2.5. Tính phân tán

      • 2.6. Tính đa luồng

      • 2.7. Tính linh động

  • CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG, XÂY DỰNG CHƯƠNG TRÌNH

    • 1. Xác định yêu cầu

      • 1.1 Yêu cầu chức năng

      • Phân chia lịch thực hành cho các lớp, các giáo viên

      • 1.2 Yêu cầu phi chức năng

    • 2. Phân tích và thiết kế hệ thống

      • 2.1. Phân tích chương trình

      • 2.3. Xây dựng các chức năng

  • - Xóa dữ liệu private void btnXoaMouseClicked (java.awt.event.MouseEvent evt) {

  • -Thêm dữ liệu.

  • -Sửa dữ liệu.

  • -Lưu dữ liệu.

  • PrivatevoidbtnLuuMouseClicked(java.awt.event.MouseEve nt evt)

  • {

  • -Không lưu dữ liệu.

  • -Thoát.

  • -Đổ dữ liệu.

  • KẾT LUẬN

  • TÀI LIỆU THAM KHẢO

Nội dung

TỔNG QUAN VỀ LẬP TRÌNH JAVA 1 Giới thiệu về ngôn ngữ J ava

Một số đặc trưng cơ bản của ngôn ngữ Java 1 Tính đơn giản Tính hướng đối tượng (OOP) 3 Tính mạnh mẽ 4 Tính bảo mật 5 Tính phân tán 6 Tính đa luồng 7 Tính linh động CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG VÀ XÂY DựNG CHƯƠNG TRÌNH

Java là một ngôn ngữ lập trình được phát triển từ C/C++, kế thừa những ưu điểm của các ngôn ngữ này và loại bỏ các cú pháp phức tạp Đặc trưng nổi bật của Java bao gồm tính đơn giản, hướng đối tượng, khả năng độc lập với phần cứng và hệ điều hành, độ mạnh mẽ, tính bảo mật, khả năng phân tán, hỗ trợ đa luồng và tính linh động.

Các nhà thiết kế Java muốn tạo ra một ngôn ngữ lập trình dễ học và thân thiện với hầu hết lập trình viên, vì vậy họ đã loại bỏ những đặc điểm phức tạp của C và C++.

- Loại bỏ thao tác con trỏ, thao tác định nghĩa nạp chồng toán tử

- Không cho phép đa kế thừa mà sử dụng các giao diện

- Không sử dụng lệnh “goto” cũng như file header (.h)

- Loại bỏ cấu trúc “struct” và “union”

2.2 Tính hướng đối tượng (OOP)

Java là ngôn ngữ lập trình thuần hướng đối tượng, yêu cầu mọi chương trình được xây dựng dựa trên các đối tượng Khác với C/C++, nơi có thể tạo ra các hàm độc lập, Java chỉ cho phép tạo các phương thức liên kết với một lớp cụ thể Đồng thời, Java không hỗ trợ đa kế thừa cho các đối tượng, mà thay vào đó sử dụng giao diện (interface) để giải quyết vấn đề này.

Java là ngôn ngữ yêu cầu chặt chẽ về kiểu dữ liệu.

- Kiểu dữ liệu phải khai báo tường minh.

- Java không sử dụng con trỏ và các phép toán con trỏ.

- Java kiểm tra tất cả các truy nhập đến mảng, chuỗi khi thực thi để đảm bảo rằng các truy nhập đó không ra ngoài giới hạn kích thước

Trong lập trình truyền thống, lập trình viên phải tự quản lý bộ nhớ, bao gồm việc cấp phát và giải phóng bộ nhớ, điều này có thể dẫn đến lỗi nếu họ quên giải phóng Tuy nhiên, trong Java, quá trình này được tự động hóa thông qua dịch vụ thu nhặt rác (garbage collection), giúp lập trình viên không cần lo lắng về việc quản lý bộ nhớ.

- Cơ chế bẫy lỗi của Java giúp đơn giản hóa quá trình xử lý lỗi và hồi phục sau lỗi.

Java cung cấp một môi trường quản lý thực thi chương trình với nhiều mức để kiểm soát tính an toàn:

- Ở mức thứ nhất, dữ liệu và các phương thức được đóng gói bên trong lớp. Chúng chỉ được truy xuất thông qua các giao diện mà lớp cung cấp.

- Ở mức thứ hai, trình biên dịch kiểm soát để đảm bảo mã là an toàn, và tuân theo các nguyên tắc của Java.

- Mức thứ ba được đảm bảo bởi trình thông dịch chúng kiểm soát xem bytecode có đảm bảo các quy tắc an toàn trước khi thực thi không.

- Mức thứ tư kiểm soát việc nạp các lớp vào bộ nhớ để giám sát việc vi phạm giới hạn truy xuất trước khi nạp vào hệ thống.

Java được phát triển để hỗ trợ các ứng dụng mạng thông qua các lớp mạng (java.net) Ngoài ra, Java tương thích với nhiều nền tảng khác nhau, giúp nó trở thành một công cụ phát triển phổ biến trên Internet, nơi có sự đa dạng về nền tảng.

Chương trình Java hỗ trợ giải pháp đa luồng (Multithreading) cho phép thực hiện nhiều công việc đồng thời, đồng thời cung cấp cơ chế đồng bộ giữa các luồng Tính năng này giúp xây dựng các ứng dụng mạng hoạt động hiệu quả.

Java được phát triển như một ngôn ngữ động, phù hợp với các môi trường mở Các chương trình Java chứa thông tin thực thi phong phú, giúp kiểm soát và truy cập đối tượng trong quá trình chạy, từ đó hỗ trợ khả năng liên kết mã động.

CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG, XÂY DỰNG

Phân tích thiết kế hệ thống

Để đảm bảo lịch thực hành cho các lớp học và giáo viên hướng dẫn không bị trùng lặp, cần phân chia thời gian hợp lý cho từng phòng lab Việc này giúp duy trì liên tục quá trình dạy và học Mỗi phòng thực hành được trang bị thiết bị phù hợp với từng môn học, vì vậy việc nắm rõ cơ cấu tổ chức của các phòng là rất quan trọng để phân lịch thực hành một cách hiệu quả.

1.2 Yêu cầu phi chức năng

Giao diện đơn giản, đẹp mắt và dễ sử dụng.

2 Phân tích và thiết kế hệ thống

Phần mềm quản lịch thực hành của giảng viên gồm các chức năng:

- Quản lý giảng viên: Quản lý thông tin giảng viên.

- Quản lý môn học: Quản lý lịch của giảng viên theo môn học.

- Quản lý lớp học: Quản lý thtoong tin lớp thực hành của giảng viên.

- Quản lý khoa: Quản lý các khoa của trường.

- Quản lý người dùng: Quản lý thông tin người dùng hệ thống.

- Quản lý thời khóa biểu: Quản lý chi tiết lịch và các môn học.

- Quản lý phòng: Quản lý phòng thực hành.

2.2 Thiết kế cơ sở dữ liệu

- Diagram cơ dử dữ liệu:

- Thiết kế chi tiết cơ sử dữ liệu o Bảng Khoa:

Column Name Data Type Allow

Column Name Data Type Allow Nulls ĩ MAGV nvarchar(5ũ)

Column Name Data Type Allow Nulls

SLUONG irrt |~7| o Bảng Thời Khóa Biểu:

Cũlumn Name Data Type Allaw Nulls

Coíurnn Name Data Type Allaw Nulls í MALOP char(1OJ

SISO int p 7 ] o Bảng Người Dùng:

Cũlumn Name Data Type Allow Nulls

Rolẹ nvarchar(5O) [77] o Bảng Môn Giảng Viên:

Column Name Data Type Allow Nulís

MALOP char{10} [77] o Bảng Môn Học:

Colurnn Name Data Type Allow Nulls

2.3 Xây dựng các chức năng

Mô tả chi tiết xây dựng các chức năng trong phần mềm quản lý lịch thực hành giảng viên.

Quản lý giảng viên bao gồm việc liệt kê danh sách giảng viên và hiển thị dữ liệu trên bảng Ngoài ra, hệ thống cũng cho phép thêm mới một giảng viên với các thông tin cần thiết như mã giảng viên, họ và tên.

Số diện thoại. o Cập nhật thông tin một giảng viên. o Xóa một giảng viên Xóa thông tin về giảng viên.

Quản lý người dùng bao gồm các chức năng quan trọng như liệt kê danh sách người dùng và hiển thị dữ liệu trên bảng, thêm mới người dùng với thông tin như tên đăng nhập, mật khẩu và vai trò, cập nhật thông tin của từng người dùng, cũng như xóa thông tin của một người dùng khi cần thiết.

Quản lý môn học bao gồm việc liệt kê danh sách các môn học và hiển thị thông tin trên bảng Người dùng có thể thêm mới môn học với các thông tin cần thiết như mã môn, tên môn và mã khoa Ngoài ra, hệ thống cũng cho phép cập nhật thông tin của một môn học hiện có và xóa thông tin về môn học khi cần thiết.

Quản lý lớp học bao gồm việc liệt kê danh sách lớp và hiển thị dữ liệu trên bảng Người dùng có thể thêm mới lớp với các thông tin như mã lớp, tên lớp và sĩ số Ngoài ra, hệ thống cũng cho phép cập nhật thông tin của một lớp hiện có và xóa thông tin về lớp khi cần thiết.

Quản lý phòng là một quy trình quan trọng bao gồm việc liệt kê danh sách phòng và hiển thị dữ liệu trên bảng Người dùng có thể thêm mới phòng với các thông tin như mã phòng, tên phòng, chức năng, sĩ số và số lượng Ngoài ra, hệ thống cũng cho phép cập nhật thông tin của một phòng cụ thể và xóa thông tin về phòng khi cần thiết.

Quản lý khoa bao gồm việc liệt kê danh sách các khoa và hiển thị dữ liệu trên bảng Người dùng có thể thêm mới khoa với các thông tin như mã khoa, tên khoa và số điện thoại Ngoài ra, hệ thống cho phép cập nhật thông tin của một khoa cụ thể và xóa thông tin về khoa khi cần thiết.

Quản lý thời khóa biểu là một quá trình quan trọng trong việc tổ chức và sắp xếp lịch học Hệ thống cho phép liệt kê danh sách thời khóa biểu và hiển thị dữ liệu dưới dạng bảng Người dùng có thể thêm mới thời khóa biểu với các thông tin cần thiết như ngày dạy, mã môn học, mã phòng, từ tiết đến tiết, bài dạy và ghi chú Ngoài ra, việc cập nhật thông tin của một thời khóa biểu cũng được hỗ trợ, cùng với tính năng xóa để loại bỏ thông tin không còn cần thiết về thời khóa biểu.

- Giao diện đăng nhập. ĐĂNG NHẬP HỆ THÔNG

UÁN LÝ LỊCH THỰC HÀNH CỦA GIÁNG VIÊN KHOA CNTT - TRƯỜNG ĐẠI HỌC ĐIỆN Lực

Hệ thống Quản lý Hướng dẫn

- Giao diện quản lý giảng viên.

- Giao diện quản lý lớp học.

2.5 Một số đoạn code mẫu.

- Xóa dữ liệu private void btnXoaMouseClicked (java.awt.event.MouseEvent evt) {

The code checks if a date has been selected; if not, it prompts the user to choose one If a date is selected, it confirms with the user whether they want to proceed with the action related to that date.

The code snippet demonstrates a function to delete data based on a specified category It clears the data from the table model and resets the text fields to empty If a SQL exception occurs during the deletion process, it displays a message dialog indicating that the deletion has failed.

-Thêm dữ liệu. private void btnThemMouseClicked (java.awt.event.MouseEvent evt) {

// TODO add your handling code here: setNull0://Xoa trang TextField setKhoa (false)://Mo khoa TextField setButton(false);//Goi ham chua cac Button

-Sửa dữ liệu. private void btnSuaMouseClicked(java.awt.event.MouseEvent evt) {

// TODO addyour handling code here:

String NGA YDA Y= txtNgayDay getText(); if (NGAYDAY.length()==0) Chua Chon Ma loai

JOptionPane.showMessageDialog (null, "Vui lòng chọn loi can sua", "Thong bao",1); else

{ setKhoa (false);//Mo khoa cac TextField this.txtNgayDay.enable(false); setButton (false); //Khoa cac Button cothemse; // Gan co themse de ghi nhan trang thai la sua

PrivatevoidbtnLuuMouseClicked(java.awt.event.MouseEve nt evt)

// TODO add your handling code here:

String NGAYDAY=txtNgayDay.getT ext();

String DENTIET=txtDenT iet.getT ext();

String GHICHU=txtGhiChu.getText(); try

{ if (cothem==true)//Luu cho them moi THOIKHOABIEU.Insert Data

(NGAYDAY, MAMH, MAPH, TUTIET, DENTIET, BAIDAY, GHICHU);else

THOIKHOABIEU.EditData (NGAYDAY, MAMH, MAPH, TUTIET, DENTIET, BAIDAY, GHICHU);

ClearData(); /goi ham xua du lieu tron tableModel

ShowData(); //Do lai du lieu vao Table Model

JOptionPane showMessageDialog(null, "Cap nhat that bai", "Thong bao", 1); setKhoa (false); setButton(true);

-Không lưu dữ liệu. private void btnKluuMouseClicked (java.awt.event.MouseEvent evt) {

// TODO add your handling code here: setNull(); setKhoa (true); setButton (true);

-Thoát. private void btnThoatActionPerformed (java.awt.event.ActionEvent evt) {

// TODO add your handling code here: this.dispose();

Ham do du lieu vao tableModel public void ShowData() throws SQLException

ResultSet result= PHONG Show Phong (); try { while (result.next ()) { // nếu còn đọc tiếp được một dòng dữ liệu

String rows[] = new String[5]; rows [0] = result.getString (1); // lấy dữ liệu tại Cột Số 1 (ứng với mã hàng) rows[1]

The code retrieves data from a specific column, with the second column corresponding to the item name, and stores it in the variable `ww[2]` It then fetches additional data from the fourth and fifth columns, adding these rows to the `tableModel` for display.

//mỗi lần có sự thay đổi dữ liệu ở tableModel thì Jtable sẽ tự động update

Ngày đăng: 15/03/2022, 23:10

TỪ KHÓA LIÊN QUAN

w