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

BÀI TẬP JAVA CÓ HƯỚNG DẪN

46 805 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

Định dạng
Số trang 46
Dung lượng 2,46 MB

Nội dung

1 Module/môn: Lập trình Java 3 Số hiệu assignment: 1/1 % điểm: 60% Người điều phối của FPT Polytechnic: Bài assignment này đòi hỏi sinh viên phải dùng khoảng 35h làm để hoàn thành Tươ

Trang 1

1

Module/môn: Lập trình Java 3 Số hiệu assignment: 1/1 % điểm: 60%

Người điều phối của FPT Polytechnic:

Bài assignment này đòi hỏi sinh viên phải dùng khoảng 35h làm để hoàn thành

Tương ứng với mục tiêu môn học:

Gian lận là hình thức lấy bài làm của người khác và sử dụng như là mình làm ra Hình thức đó

bao gồm những hành động như: copy thông tin trực tiếp từ trang web hay sách mà không ghi rõ nguồn tham khảo trong tài liệu; gửi bài assignment làm chung như là thành quả cá nhân; copy bài assignment của các sinh viên khác cùng khóa hay khác khóa; ăn trộm hay mua bài assignment của ai đó và gửi lên như là sản phẩm mình làm ra Những sinh viên bị nghi ngờ gian lận sẽ bị điều tra và nếu phát hiện là có gian lận thì sẽ phải chịu các mức phạt theo quy định của Nhà trường

Quy định nộp bài assignment

• Một bản mềm kết quả bài làm assignment của bạn phải được upload trước nửa đêm (giờ

địa phương) vào ngày hạn nộp Quá hạn nộp hệ thống sẽ khóa lại và sinh viên không còn

quyền nộp bài

• Phiên bản upload lên cuối cùng sẽ được chấm điểm Sinh viên có quyền upload đè file

nhiều lần trước khi hết hạn nộp

• Tất cả những file tài liệu văn bản phải để ở dạng file gốc chứ không file dạng file được

xuất ra từ định dạng khác (ví dụ pdf được xuất từ doc) Không được gửi tài liệu văn bản

dưới dạng ảnh chụp

• Đối với bài assignment này bạn cũng phải đưa các bằng chứng hay sản phẩm khác vào

trong file nén dạng zip

• Kích thước file cần tuân thủ theo giới hạn trên hệ thống nộp bài (thông thường là <50M)

• Hãy đảm bảo các file được upload lên không bị nhiễm virus (điều này có thể dẫn đến file

bị hệ thống xóa mất) và không đặt mật khẩu mở file Nếu vi phạm những điều này, bài

coi như chưa được nộp

Trang 2

2

• Hãy chú ý xem thông báo sau khi upload để chắc chắn bài của bạn đã được nộp lên hệ

thống chưa

• Bạn không phải gửi lại file đề bài của assignment (file này)

Quy định đánh giá bài assignment

1 Sinh viên không có bài assignment trên hệ thống sẽ bị 0 điểm bài assignment

2 Sau hạn nộp bài một tuần, sinh viên nộp muộn có quyền nộp đơn kiến nghị xin được chấp nhận gia hạn nộp Hội đồng Nhà trường sẽ xét duyệt từng trường hợp Nếu kiến nghị không được chấp nhận, bài giữ nguyên điểm 0 Nếu quá một tuần không có kiến nghị thì bài cũng sinh viên không nộp mặc nhiên nhận điểm 0

3 Ngay cả trường hợp bài của sinh viên bị phát hiện gian lận sau khi có điểm, sinh viên sẽ

không được công nhận bài đó và chịu mức kỷ luật như quy định của Nhà trường

========================

Assignment

Lập trình JAVA – Thiết kế theo mô hình MVC

Mục tiêu cụ thể Sau bài assignment này , sinh viên cần đặt được:

- Hiểu về cấu trúc chung của JAVA GUI

- Thành thạo thiết kế giao diện bằng NETBEAN, kết nối CSDL

- Có đầy đủ kiến thức và kỹ năng để thiết kế các ứng dụng JAVA đơn giản…

Các công cụ cần có - Jdk

- NetBean

- Eclipse

- MS SQL server 2008 hoặc MySQL

Tài nguyên Thư mục tài nguyên đi kèm

ĐẶT VẤN ĐỀ

Trường cao đẳng FPT Polytechnic sử dụng một phần mềm nghiệp vụ đào tạo để quản lý sinh viên

và quá trình học tập của sinh viên Hãy xây dựng một chương trình JAVA mô phỏng các chức năng đơn giản của chương trình nghiệp vụ đào tạo của trường cao đẳng Fpt Poly với những yêu cầu như sau:

- Chương trình có chức năng đăng nhập

- Các user được chia làm hai loại là: giảng viên và cán bộ đào tạo

- Khi đăng nhập user giảng viên, nếu đăng nhập thành công sẽ hiện ra Chức năng quản lý điểm, cho phép nhập điểm, sửa điểm, xóa điểm cho các sinh viên đã có trong trường

- Khi đăng nhập user cán bộ đào tạo, sẽ hiện ra Chức năng quản lý sinh viên, gồm những

chức năng, thêm mới một sinh viên, xóa sinh viên

- Mỗi khi giảng viên cập nhật điểm cho sinh viên, chương trình sẽ tính lại điểm trung bình của mỗi sinh viên, đồng thời hiển thị danh sách 3 sinh viên có điểm tổng kết cao nhất của mỗi môn học

Trang 3

3 Giao diện chức năng Quản lý điểm

4 Giao diện chức năng quản lý sinh viên

Y2 Giao diện các Message thông báo

1 Message đăng nhập thành công

2 Message đăng nhập thất bại

3 Message báo lỗi, nếu cán bộ đào tạo thêm một sinh viên có mã sinh viên trùng lặp

với dữ liệu đã có

Y3 Xây dựng cơ sở dữ liệu FPL_ĐàoTạo

1 Thông tin người dùng được lưu trong bảng users

2 Có ít nhất các cột: username, password,chức năng

3 Thông tin Sinh viên được lưu trong bảng students gồm ít nhất các cột: Mã_SV,

họ_và_tên,

4 Bảng điểm của sinh viên được lưu trong bảng Grade gồm các cột: Mã_SV,điểm Tiếng

Anh, Điểm Tin học, Điểm GDTC

Trang 4

4

Y4 Điều khiển

1 Mỗi khi click vào nút Login, chương trình phải kiểm tra thông tin đăng nhập có đúng

không, nếu đúng thông báo thành công, nếu sai thông báo đăng nhập sai

2 Giảng viên chỉ có thể nhập điểm không thể thêm mới sinh viên

3 Cán bộ đào tạo chỉ có thể thêm mới sinh viên, không thể nhập điểm

4 Mỗi khi giảng viên cập nhật điểm cho sinh viên, chương trình sẽ tính lại điểm trung bình

của mỗi sinh viên, đồng thời hiển thị danh sách 3 sinh viên có điểm tổng kết cao nhất

của mỗi môn học

Y5 Xây dựng chương trình theo mô hình MVC

Sơ đồ các lớp

MÔ TẢ SẢN PHẨM PHẢI NỘP

1 Thư mục chứa Project

2 File dữ liệu đã nhập một số nhân viên

Đóng gói tất cả các sản phẩm trên thành một file nén theo định dạng

JAVA3_MãSV_Assignment.zip để đưa lên hệ thống LMS theo yêu cầu của giảng viên Lưu ý về

Trang 5

yêu cầu nộp bài)

- Không đặt tên, đóng gói không theo chuẩn yêu cầu

-

Trang 6

Bài 1 Tạo một ứng dụng SWING cơ bản

1 Trong NetBeans, chọn New Projects, đặt tên cho Projects là lab1, nhớ bỏ chọn nút “Creat Main Class”

 Finish

2 Chuột phải vào Source Package, chọn như hình

Đặt tên là bài1  Finish

3 Chuột phải vào bài 1, chọn như hình

Trang 7

Đặt tên là Jframe_canban

4 Extent Jframe

 Xuất hiện báo lỗi màu đỏ  Bấm Alt-Enter để hiển thị thông báo lỗi và gợi ý

 Lỗi này là chưa import thư viện cho Jframe

 Chọn “Add import for javax.swing.jframe

 hết báo lỗi

5 Khai báo phương thức main trong class JFrame_canban

“public static void main(String[] args)”

Hoặc có thể dùng phím tắt psvm – bấm phím Tab

Trang 8

Tạo một thực thể JFrame_canban

Tạo phương thức JFrame_canban

Như vậy ta đã tạo được một JFrame, hãy nhấn Shirt-F6 để chạy thử

Như bạn thấy chương trình đã chạy thành công, nhưng chúng ta không thấy điều gì xảy ra, do JFrame chưa được set thuộc tính hiển thị

Trang 9

Bạn có thể thiết lập thêm các thuộc tính cho JFrame cho đúng ý mình

setTitle(String)

setBackground(c)

setForeground(c)

setSize(width,height)

Bài 2 Tạo JPanel và set ảnh nền cho JPanel

1 Trong Project của bạn, tạo 1 JFrame Form

2 Trong ô Swing Containers chọn Panel và kéo vào Frame của chúng ta, kéo cho vừa với kích thước

Trang 10

Frame

3 Sau khi kéo Panel vừa khít với Frame, nhấn chuột phải vào Panel đó, chọn Customize Code

Sau đó ta sẽ có hộp thoại:

Trang 11

Tại chỗ default code, bạn chọn lại là Custom creation

Như vậy ta đã có 1 Jpanel nằm trong JFrame

Chúng ta có thể thiết lập thuộc tính cho JPanel bằng các phương thức

- setBound

- setBackground

- setLayout

- setBorder

Trang 12

4 Set ảnh nền cho Panel

Paste đoạn code sau vào giữa nhé:

ImageIcon icon = new ImageIcon( "images/bg.png" );

public void paintComponent(Graphics g){

Trang 13

Bài 1 Thiết kế giao diện máy máy tính bỏ túi

Tạo mới một Project, add một JPanel vào JFrame,

Tiếp theo bạn quy định cho cấu trúc của GridLayout là 5 cột, 4 hàng bằng cách Click vào mục

GridLayout có trong khung Inspector, sau đó trong khung Properties ở bên phải màn hình của

NetBean bạn sẽ quy định thông qua mục Column và Row như hình dưới đây

kéo thả vào trong jPanel của mình các nút sẽ dùng trên giao diện

Trang 14

Đặt tên cho các thành phần trên giao diện

Đặt tên cho label dùng để hiển thị dữ liệu là “hienThi” bằng cách nhấn nút phải vào jLabel này và chọn lệnh “Change variable Name …”,

Giao diện hoàn thiện có dạng như sau

Bài 2 Lập trình sự kiện cho các nút

Lập trình cho các nút số (0,1,2, … 9)

Trang 15

Để thể hiện số trên jLabel hienThi trong cửa sổ ứng dụng khi người dùng chọn số nào (nút nào) thì số đó sẽ xuất hiện trong jLabel Chúng ta sẽ làm như sau

- Trỏ chuột vào nút số cần lập trình và nhấn nút phải, sau đó chọn Events -> Action ->

actionPerformed Các thao tác được mô tả như hình dưới đây

Lúc này, cửa sổ viết Code sẽ xuất hiện Bạn hãy viết mã lệnh cho sự kiện của nút như sau

Các nút tương ứng với các phép toán cơ bản (+, -, *, /)

Khi người dùng nhấn vào các nút số để nhập vào số cần tính (Tại thời điểm này ta xem như họ nhập

số thứ nhất), khi người dùng chọn phép toán chính là lúc bạn phải ghi nhận số đã nhập vào trong 1

biến đồng thời ghi nhận luôn phép toán mà người ta muốn thực hiện, sau đó bạn phải “Reset” lại giá trị

trong jLabel hienThi để cho người dùng có thể tiến hành nhập tiếp giá trị của số thứ 2 có tham gia tính toán trong chương trình Cho đến khi họ nhấn vào nút “=” thì chúng ta sẽ lấy giá trị thứ nhất (Đã ghi nhận) kế hợp với phép toán đã chọn cùng với số thứ 2 (Số đang có trên jLabel hienThi tại thời điểm tính toán) để tính và trả về kết quả trên màn hình Với phân tích như thế, tôi đã khai báo ở mức toàn cục của lớp View 2 biến thành phần như sau

Trang 16

mã lệnh của các nút chức năng tượng trưng cho 4 phép toán cơ bản như thế này

Như vậy, sau khi nhấn chọn phép toán và nhập số thứ 2; người dùng chọn nút “=” để xem kết quả của phép toán thì chúng ta sẽ lập trình cho nút này như sau

Trang 17

Tương tự với các phép toán khác

Trang 18

Bài 1: Xây dựng giao diện trò chơi xếp ô số như sau

Hướng dẫn thực hiện:

 Thiết kế giao diện với 16 nút

 Đặt layout cho cửa sổ là BorderLayout

 Kéo 3 Jpanel vào và đặt ở các vị trí: First, Center, Last sau đó đặt layout cho các JPanel này như sau:

 FlowLayout.CENTER cho 2 Panel First và Last

 GridLayout(4x4) cho Panel Center

 Kéo Jlabel vào JPanel vị trí First, 16 nút vào JPanel Center, 1 nút vào JPanel Last thiết kế các nhãn phù hợp

FlowLayout(CENTER)

FlowLayout(CENTER) GridLayout(4x4)

Trang 19

Bài 2: Xây dựng trò chơi với qui tắc

 Khi nhấp chuột nút số cạnh nút trống thì sẽ đổi số đó cho ô trống

 Trò chơi kết thúc khi thứ tự các ô số được sắp xếp theo chiều tăng dần

Hướng dẫn:

 [Bắt đầu]: Mở hộp thoại InputDialog yêu cầu nhập họ và tên người chơi và hiển thị trên tiêu đề của của sổ sau

đó Enable tất cả các nút số

o Sử dụng JoptionPane.showInputDialog() để là họ và tên từ người dùng

o Sử dụng this.setTitle() để thiết lập tiêu đề

o Sử dụng btn.setEnabled() để Enable/Disable các nút

 [Nhấp nút số]: nếu nút số cạnh nút trống thì chuyển số sang nút trống

o Sử dụng btn.getText() và btn.setText() để thay đổi nhãn của nút

 Xác nhận có chơi tiếp hay không khi trò chơi kết thúc? Nếu chọn yes thì đánh lại các ô số ngược lại thì đóng cửa

Trang 20

Bài 1: Xây dựng giao diện JMenu

Sử dụng NetBeans IDE , xây dựng giao diện chương trình như sau:

Bài 2: xử lý sự kiện trên JMenu

Xây dựng một chương trình có giao diện sau:

Gán phím tắt và sự kiện cho menu

Xử lý sự kiện:

Trang 22

Bài 1 Kết nối CSDL SQL Server 2008 từ NetBean (Type 4)

Bước 1: Download Driver

Để sử dụng CSDL SQL Server 2008, chúng ta có thể dùng 1 trong 2 driver sau:

driver JDBC nhanh nhất cho SQL Server

Giải nén file download, ta được file thư viện có dạng jar

Bước 2: Tạo Library mới

Trong NetBean bạn chọn Tools > Libaries > Chọn New Library > Đặt tên cho nó (chọn library type là Class Libaries)

Trang 23

Bước 3: Tạo Project và import driver cho Project

Tạo project Test (Java Application) Nhấp chuột phải vào project mới tạo và chọn Properties Phía bên trái của của Sổ vừa hiện lên bạn chọn mục Libaries, chọn Add Library, bạn chọn Library vừa add vào ở bước 2

Bước 4: Kết nối

Tạo File test.java để thử connect

Trang 24

Bài 2 : kết nối SQL Server trong JAVA Sử dụng ODBC – JDBC Bridge

(Type I)

Trong Windows, bạn hãy chọn Start - > Control Panel -> Administrative tools ->

Source Administrator” của hệ điều hành Windows và bạn hãy tiến hành theo các bước như mô tả dưới đây

Chọn [Tab] System DSN

Trang 25

Chọn nút Add để tạo 1 DSN mới trong môi trường, lúc này bạn sẽ thấy xuất hiện cửa sổ sau :

Trang 26

Chọn DBMS sẽ sử dụng, trong trường hợp của bài viết minh họa này, tôi minh họa dùng SQL Server, vì thế bạn hãy kéo thanh cuộn xuống phía dưới và dùng chuột chọn mục SQL Server (Nếu máy của bạn chưa cài Microsoft SQL Server thì sẽ không tìm thấy mục này) Giao diện như hình sau

Lúc này chọn Finish và tiến hành khai báo các thông số cần thiết cho Data Dource Name sẽ sử dụng cho ODBC Driver như mô tả dưới đây

Trang 27

Bạn sẽ phải tiến hành nhập thông tin cho DSN cần tạo

Trong giao diện của cửa sổ trên, ta thấy có 3 mục Mục “Name” dùng để thông báo cho ODBC Driver biết rằng tên của DSN mà bạn muốn tạo tên là gì, mục

của mình Mục cuối cùng “Server” : bạn phải chọn tên của “Database Server” – tức

là tên của máy tính có cài đặt SQL Server chứa Database mà bạn sẽ kết nối đến (Nếu bạn kết nối đến 1 Database Server trên hệ thống mạng hoặc Internet thì tại mục này, bạn có thể gõ vào địa chỉ IP của server đó, trong trường hợp bạn kết nối đến SQL Server cài trong máy tính của bạn thì nhấn vào nút và chọn tên của

Database Server là tên mà khi cài đặt Microsoft SQL Server bạn đã đặt tên cho máy tính của mình) Trong hình dưới đây, tôi muốn DSN có tên là “qlCuocHen” và Database server trong máy tính của tôi có tên là “BODUA-D778EAB2E”

Trang 28

Bạn chọn “Next” để tiếp tục, trên màn hình sẽ thấy giao diện như hình sau

Trong giao diện này, có 2 Radio button ở trên cùng cho phép bạn chọn hình thức đăng nhập và chứng thực khi kết nối vào Database Mục thứ nhất dùng

Trang 29

khi muốn chứng thực bằng tài khoản đăng nhập của hệ điều hành windows Trong ví dụ này tôi chọn cách thứ 2 và chứng thực khi kết nối bằng 1 tài

khoản đã tạo trong SQL Server, vì thế tại 2 khung chọn ở phía dưới, Login

ID và Password, tôi phải nhập vào tên tài khoản đăng nhập và mật khẩu cần thiết của mình

Tiếp theo bạn chọn nút Next, cửa sổ tiếp theo sẽ xuất hiện như hình dưới đây

Bạn phải chỉ ra database mà mình muốn kết nối đến thông qua mục chọn “Change

the default database to”

Nhấn nút Next

Trang 30

Cuối cùng chọn Finish,

Trang 31

Bây giờ, bạn đã nhìn thấy tên của Data Source mà bạn tạo ra xuất hiện trong cửa sổ

Data Source)

Trang 32

Bài 1: Thêm xóa sửa dữ liệu trên jTable

Dựa vào bài jTable trên slide 6, hãy hoàn thiện chương trình

- Bổ sung nút edit vào giao diện và viết hàm editCell() để sửa một ô giá trị

Bài 2 Phương pháp khác để viết hàm xóa hàng trong jTable

Trong bài tập 1 chúng ta đã xóa hàng bằng cách xóa bản ghi tương ứng trong database sau đó setModel lại cho jTable Phương pháp trên sẽ không tối ưu nếu bảng dữ liệu của chúng ta lớn vì việc setModel sẽ tốn khá nhiều thời gian cho việc truy xuất để lấy dữ liệu ra từ database

Có một cách khác hay hơn nhiều Trong data model, bạn hãy tạo ra một phương thức như sau:

Chúng ta tạo một JButton để thực hiện xóa row được chọn trên JTable Code xử lý sự kiện của nút như sau:

Trang 34

MỤC TIÊU

 Nắm vững kỹ thuật gửi email qua gmail

 Biết cách queue email để tránh nghẽn

BÀI 1: Thiết kế giao diện như hình dưới

• Model: Mô hình dữ liệu cho JList

• View: Giao diện hiển thị các mục được chọn

• Controller: Xử lý sự kiện khi một nút được nhấn

Hướng dẫn thực hiện

Ngày đăng: 24/02/2019, 17:04

TỪ KHÓA LIÊN QUAN

w