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

30 71 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 Trường Đại Học Điện Lực
Chuyên ngành Công Nghệ Thông Tin
Thể loại báo cáo chuyên đề
Năm xuất bản 2021
Thành phố Hà Nội
Định dạng
Số trang 30
Dung lượng 506,39 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 hướng dẫn ở mỗi phòng lab vào ngày giờ để đảm bảo lịch không bị trùng lặp, vừa đảm bảo việc dạy và học không bị dán đoạn. Mỗi phòng thực hành có một số trang thiết bị phù hợp với mỗi môn thực hành. Vì thế cần nắm bắt cơ cấu tổ chức của các phòng qua đó có thể phân lịch thực hành phù hợp với từng môn học.

      • 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.2. Thiết kế cơ sở dữ liệu

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

  • Xóa dữ liệu

  • -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

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

Java là một ngôn ngữ lập trình cao cấp được phát triển bởi Sun Microsystems và ra mắt vào tháng 6 năm 1995 Ngôn ngữ này có khả năng chạy trên nhiều nền tảng khác nhau, bao gồm Windows, Mac OS và các phiên bản UNIX khác.

Phiên bản mới nhất của Java Standard Edition là Java SE 8, đánh dấu sự phát triển vượt bậc của ngôn ngữ lập trình này Nhằm đáp ứng nhu cầu đa dạng của người dùng, nhiều cấu hình khác nhau đã được phát triển, như J2EE cho ứng dụng doanh nghiệp và J2ME cho ứng dụng di động.

Các phiên bản J2 mới đã được đổi tên thành Java SE, Java EE và Java ME. Java được đảm bảo là Write Once, Run Anywhere.

Java đã trở thành một công cụ lập trình phổ biến cho các lập trình viên chuyên nghiệp, được phát triển dựa trên nền tảng của C và C++ Ngôn ngữ này kế thừa cú pháp của C và các đặc trưng hướng đối tượng từ C++, mang lại sự linh hoạt và mạnh mẽ trong việc phát triển phần mềm.

Vào năm 1991, một nhóm kỹ sư từ Sun Microsystems đã phát triển một ngôn ngữ lập trình mới nhằm điều khiển các thiết bị điện tử như tivi, máy giặt và lò nướng.

… Mặc dù C và C++ có khả năng làm việc này nhưng trình biên dịch lại phụ thuộc vào từng loại CPU.

Trình biên dịch thường tốn nhiều thời gian và chi phí để phát triển, do đó việc có một trình biên dịch riêng cho mỗi loại CPU là rất đắt đỏ Nhu cầu thực tế yêu cầu một ngôn ngữ lập trình nhanh, gọn, hiệu quả và độc lập thiết bị, cho phép chạy trên nhiều loại CPU và trong các môi trường khác nhau Chính vì lý do này, ngôn ngữ “Oak” đã được phát triển và vào năm 1995 đã được đổi tên thành Java.

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

Java là một ngôn ngữ lập trình được phát triển từ C/C++, kế thừa và phát huy các ưu điểm của chúng, đồng thời loại bỏ những cú pháp phức tạp Ngôn ngữ này có những đặc điểm nổi bật như 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, cùng với tính mạnh mẽ, bảo mật, phân tán, đa luồng và linh hoạt.

Các nhà thiết kế Java hướng đến việc xây dựng một ngôn ngữ lập trình dễ học và quen thuộc cho 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 phải được xây dựng 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 ra các phương thức gắn liền với một lớp cụ thể Ngoài ra, 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) để thực hiện tính năng 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 cần 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 quên giải phóng Tuy nhiên, trong Java, lập trình viên không cần lo lắng về việc này, vì quá trình cấp phát và giải phóng bộ nhớ được tự động hóa thông qua dịch vụ thu nhặt rác (garbage collection), giúp tiết kiệm thời gian và giảm thiểu lỗi.

- 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) Với khả năng tương thích đa nền tảng, Java trở thành công cụ phát triển phổ biến trên Internet, nơi mà nhiều nền tảng khác nhau được sử dụ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ả hơn.

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ở Chương trình Java tích hợp nhiều thông tin thực thi, 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.

PHÂN TÍCH THIẾT KẾ HỆ THỐNG VÀ XÂY DỰNG CHƯƠNG TRÌNH

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

Để đảm bảo lịch thực hành cho các lớp và giáo viên không bị trùng lặp, cần phân chia lịch cụ thể cho từng phòng lab vào các ngày giờ nhất định Việc này giúp duy trì sự liên tục trong quá trình dạy và học Mỗi phòng thực hành được trang bị các thiết bị phù hợp với từng môn học, vì vậy việc nắm bắt 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 hợp lý.

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: o Bảng Giảng Viên: o Bảng Phòng: o Bảng Thời Khóa Biểu: o Bảng Lớp: o Bảng Người Dùng: o Bảng Môn Giảng Viên: o Bảng Môn Học:

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 Hệ thố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.

Quản lý người dùng bao gồm việc liệt kê danh sách người dùng và hiển thị dữ liệu trong bảng Hệ thống cho phép thêm mới người dùng với các thông tin như tên đăng nhập, mật khẩu và vai trò Ngoài ra, người quản lý có thể cập nhật thông tin của từng người dùng và xóa thông tin 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ị dữ liệu 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 cụ thể 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 trong 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ố 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 lớp khi cần thiết, bao gồm việc xóa toàn bộ thông tin liên quan đến lớp đó.

Quản lý phò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 từng phòng một cách dễ dàng.

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 Hệ thống cũng cho phép cập nhật thông tin của một khoa hiện có 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 quy trình quan trọng, bao gồm việc liệt kê danh sách thời khóa biểu và hiển thị dữ liệu trên 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, thời gian bắt đầu và kết thúc, bài dạy, cùng với ghi chú Ngoài ra, hệ thống cũng cho phép cập nhật thông tin cho một thời khóa biểu đã có Cuối cùng, người dùng có thể xóa một thời khóa biểu, xóa toàn bộ thông tin liên quan đến thời khóa biểu đó.

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

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

- Giao diện quản lý môn 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) {

To ensure a smooth user experience, the application prompts the user to select an item before proceeding If no item is selected, a message dialog appears, notifying the user to choose one If an item is selected, a confirmation dialog asks if the user wishes to proceed with the action related to the selected item.

The code snippet provided demonstrates the process of deleting data based on a specific type using the `THOIKHOABIEU.DeleteData` function It includes a method to clear data from the `tableModel`, followed by a command to reset the text fields to null In case of a SQL exception, a message dialog will alert the user with a failure notification This implementation ensures efficient data management and user feedback during the deletion process.

-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 cothem=true;

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

// TODO add your handling code here:

String NGAYDAY=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 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,

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 (); 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 specific columns in a database, with `result.getString(2)` fetching information from column 2 corresponding to the item name, while `result.getString(3)`, `result.getString(4)`, and `result.getString(5)` extract data from subsequent columns Finally, the retrieved data is added to the `tableModel` using `tableModel.addRow(rows)`.

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

Chúng em đã hoàn thành đề tài “Quản lý lịch thực hành giảng viên” dựa trên kiến thức nền tảng và nỗ lực cá nhân Mặc dù đã cố gắng, nhưng do thời gian và kiến thức hạn chế, chúng em chưa thể giải quyết tất cả các vấn đề Rất mong nhận được sự thông cảm và góp ý từ thầy cô để đề tài được hoàn thiện hơn.

Ngày đăng: 15/03/2022, 22:30

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w