BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC CÔNG NGHỆ TP.HCM THực HÀNH LẬP TRÌNH MẠNG Biên Soạn: TS. Văn Thiên Hoàng KS. Nguyễn Trọng Minh Hồng Phước www.vn THỰC HÀNH LẬP TRÌNH MẠNG IlllllllllllllÌlÌÌÌlÌlllllÌÌÌÌÌÌÌÌ|ÌÌ|ÌllÌ x1. CMP 381 * Các ý kiến đóng góp về tài liệu học tận này, xin gửi về e-mail của ban biên tập: tailieuhoctap@hutech.
vn MUE LUC mm MỤC LỤC 001010: 0. III BÀI 1: LAP TRINH KET NOI CO’ SO’ DU LIEU .1 BÀI TẬP THỰC HÀNH.-- Ăn HH TH Hà Hà HH Hân TH ch ren ng 1 iu. 1 In nh nh.2 Kết nối với cơ sở dữ liệu SQL SeTVÊT7. à LH HH HH HT nu ni chì cty 11 7) 0280 c1 0.1 THAO TÁC VỚI THƯ MỤC.
16 ri, hi là 17. LH HH HT HH ng KH ng KT KH Sư HE ky Er 21 76-1027. nọ HH HH HH BE 15.2 Tạo đối tượng TNETADDRESS. LH HH TH TH HH HH vn TH rệt 23 B.2 BAI TAP THUC na.
30 Fhn cao ca.2 Đa nhiệm (MUERSKÍ HH TH HH Hà nh ch TT ki no ki ki tk kề cà 30 4,1,3 Ưu điểm của đa lUỖng. LH HH TH HT kg kẻ 31 4.4 Nhược điểm của da luỗng.2 BAI TAP THUC na ẽ. 33 LÊN ng an ốổốẽaa.3 BÀI TẬP LẢM THỀM .- LG cọ TH HH HH HH TH Em BH 38 ri N.ÔỎ 38 BÀI 5: TCP Socket, FTP. HH Họ HH TH Su BE gu xe 39 5.1 TCP oo(an co n7\/ 066.
1 ni nan ng g.3 Các phương thức truyền dữ liệu trong FTP. nen kh ki vi ch 42 Là ii 7n. 56 BÀI 6: UDP SOCKET.2 Hoạt động của UDP SoCK©F. con HH SH TY Ki kh ng tin ni by 68 P.2 BÀI TẬP THỰC HÀNH.
chọn HH ng xen hưng 70 2 8:- 1-7. BÀI 7: LẬP TRÌNH RMI rốn. FLA KAGE GI iii. anh hổ nhe.
83 FD RIG nh.2 BÀI TẬP THỰC HÀNH. HH TH TH no TH HH KH Hà HH ngang 85 L8: 1.2 Bai thUC AMD OD.ÔỎ 89 TAI LIEU THAM KHAO uuu.cccccccccsssessseeseseeseassussseseseeesseessessaesseeesseseseesssseusetessanssenss 90 HƯỚNG DẪN MÔ TẢ MÔN HỌC Môn học này cung cấp các kiến thức cơ bản cho sinh viên về lập trình trên môi trường mạng; các kiến thức về xử lý file, kết nối và thao tác với hệ quản trị cơ sở dữ liệu; các kiến thức về TCP Socket, UDP Socket; các kiến thức về giao thức truyền dẫn file FTP; lập trình đối tượng phân tán (RMI) và áp dụng vào các bài tập thực tế. NOI DUNG MON HOC Bai 1: LAP TRINH KET NOI co so DO LIEU Sau khi thực hành xong bài này, sinh viên sẽ có khả năng lập trình các ứng dụng có kết nối cơ sở dữ liệu thông qua môi trường mạng. Sinh viên được ôn tập các kién thức về lập trình giao diện bằng ngỗn ngữ Java và các kiến thức về hệ quản trị cơ sở dữ liệu mySQL va SQL Server.
Bài 2: LUÔNG NHẬP XUẤT Sau khi thực hành xong bài này, sinh viên sẽ có khả năng thao tác với file trong việc xây dựng các ứng dụng mạng, đặc biệt là các ứng dụng truyền nhận dữ liệu. nội dung của bài thực hành này gồm 2 phần chính: thao tác với thư mục và thao tác với file (đọc/viết file nhị phân và file văn bản). Bai 3: INETADDRESS Sau khi thực hành xong bài này, sinh viên sẽ nắm được các kiến thức cd bản về INETADDRESS, cách tạo đối tượng INETADDRESS trong Java và áp dụng vào những bài tập thực tế. Bài 4: XỬ LÝ LUỒNG Sau khi thực hành xong bài này, sinh viên sẽ năm được các khái niệm cơ bản về luồng (Thread), đa nhiệm (Multitasking), đa luông (MultiThread), cách tạo ra luồng trong Java và ứng dụng vào các bài tập thực tế.
HƯỚNG DẦN Bài 5: TCP SOCKET, FTP Sau khi thực hành xong bài này, sinh viễn sẽ năm được các kiến thức cơ bản về TCP Socket, FTP, mô hình kết nối client-server; biết cách khởi tạo, xây dựng các ứng dụng kiểu client-server thông qua 2 giao thức TCP, FTP bằng ngỗn ngữ Java. Bài 6: UDP SOCKET Sau khi thực hành xong bài này, sinh viên sẽ nắm được các kiển thức cd bản về UDP Socket, mô hình kết nối client-server; biết cách khởi tạo, xây dựng các ứng dụng kiểu client-server thông qua giao thức UDP bằng ngôn ngữ 1ava. Bài 7: LẬP TRÌNH RMI Sau khi thực hành xong bài này, sinh viên sẽ nắm được các kiển thức cd bản về lập trình đối tượng phân tắn (RMI - Remote Method Invocation) trong Java và áp dụng vào các bài tập thực tế. KIẾN THỨC TIỀN ĐỀ Sinh viên có kiến thức khái quát về mạng máy tính và lập trình cơ bản.
YÊU CÂU MÔN HỌC Người học phải dự học đầy đủ các buổi lân lớp và làm bài tập đây đủ ở nhà. CÁCH TIẾP CẬN NỘI DUNG MÔN HỌC Để học tốt môn này, người học cần đọc trước các nội dung chưa được học trên lớp; tham gia đều đặn và tích cực trên lớp; hiểu các khái niệm, tính chất và ví dụ tại lớp học. Sau khi học xong, cân ôn lại bài đã học, làm các bài tập và câu hỏi. Tìm đọc thêm các tài liệu khác liên quan đến bài học và làm thêm bài tập.
PHƯƠNG PHÁP ĐANH GIÁ MÔN HỌC -_ Điểm quá trình: 50%. Điểm kiểm tra thường xuyên trong quá trình học tập.Điểm kiểm tra giữa học phần, điểm làm bài tập trên lớp, hoặc điểm chuyên cần. Hình thức bài thi thực hành trong 90 phút, không được mang tài liệu vào phòng thi. Nội dung gồm các câu hỏi và bài tập tương tự như các câu hỏi và bài tập về nhà.
BAI 1: LAP TRINH KET NOI co Sở DU LIEU a BAI 1: LAP TRINH KET NOI CO’ SO’ DU LIEU 1.1 BÀI TẬP THUC HANH Viết chương trình quản lý danh sách người sử dụng. Thông tin mỗi người sử dụng gồm có: họ tên, mật khẩu, đường dẫn thư mục, quyền truy xuất (đọc, viết, cả hai). Chương trình có thể thực hiện các chức năng sau: - Cho phép user dang ky vao hệ thống. - Cho phép user dang nhap vao hé théng.2 HUONG DAN Hiện nay, có rất nhiều hệ quản trị CSDL đang được sử dụng rộng rãi, trong phần lab này ta cùng tìm hiểu hai hệ quản trị CSDL được sử dụng phổ biến hiện nay là: mysql va SQL Server.1 Két noi CSDL mysql 1.
Cài đặt mysql thông qua gói WampServer và tạo CSDL: a. Bước 1: Cài đặt wampserver jdhc mysql-connector-java-5.10 Pa BAI 1: LAP TRINH KET NOI co So DU LIEU b. Bước 2: Sau khi cài xong WampServer ta vào Start + Program file > WampServer > start WampServer. SSDG beanies )) Startup vt bela ccel Rls ») UltraISO ), WampServer Devices and Printers start WampServer = + WinAVR-20100110 Default Programs ¿ WinRAR „ Xfire Help and Support 4 Back c.
Bước 3: Vào trình duyệt Firefox gỗ địa chỉ của trang phpmyadmin. ŸN | Ad http://localhost/phpmyadmin/ ae arted >› Latest Headlines wesseare | 6 [ì- CƠ - 6Ị- c©° - Ej- Ú3- + -R'-®-- Lj - W- với Google <_ FT] Transfer a file via Socket: Socket «x | 44), localhost /localhost | phpMyAdmi. x | + re — 90 rere 20a ee eee et d. Buc 4: Tao database quanlytaikhoan.
localhost 83 Server version: 5.51b-community-nt > Protocol version: 10 » Server: localhost via TCP/IP > User: root@localhost MySQL charset: UTF-8 Unicode (utf8) MySQL connection collation: ‘utf8_unicode_ci ~ @ i Create new database @ quanlytaikhoan Collation 9 show MySQL runtime information lỗ] Show MySQL system variables % Processes e. Bước 5; Vào Database quanlytaikhoan, tạo bang taikhoan. F Ìä Create new table on d; quanlytaikh: Name- takhoan Number of fields: 4 tén bing số lượng thuộc tỉnh BÀI 1: LẬP TRÌNH f. Bước 5: Tạo các thuộc tính cho bảng dữ liệu.
KET NOI co sce DO LIEU a B8 Server: localhost > {gs Database: quanlytaikhoan › | Table: taikhoan Field Type Length/Values† Collation Attributes username VARCHAR x 50 oa vir password VARCHAR x 50 x yor path VARCHAR v 200 yy’ vit per INT x x vir Table comments: Storage Engine: @ Collation: InnoDB Or Add 1 field(s) | Go | 2. Tạo ra các lớp đối tượng truy xuất đến CSDL: a. Bước 1: Tạo project mdi: File > New Project © NetBeans IDE 6. Ctrl+N Open Project.
Open Recent Project Ctrl+ Shift+O Open Team Project. Close Project Open File. Open Recent File Project Group Edit View Navigate Source Refactor Run Debug Profile Team Tools 2 ^ J, Ja/a web 2) ưa Java Card Java ME Woven pp Ruby J Groovy D cites J) NetBeans Medules Description: ‘your proxect. Creates 2 new Java SE application in 2 standard IDE project.
You can aso generate a main dass tn the pragect. Stanctard crejecte uce an IDE-genornted Ant build <cmpt te hui, nun, and debug Java Css Library Java Project with Exetng Sources Java Free Form Project ra BAI 1: LAP TRINH KET NOI co So DU LIEU steps 1. Name and Location © New Java Application — l Name and Location —---= Proect Locafion: _ C:\IsersTuan\DocurentsWWetBeansProjects ProjectFoller: _C; \Users\Tuan \Documents\NetBeansProjects ThucHenh 1 [Use Dedicated Folder for Storing Libraries Libraries Folder: | Different users and projects can share the same compilation branes (see Help for details), (UZ) Create Man Class thuchanh 1. Main (2) Set se Main Project <back , =» ThucHanh1 EI- Lê) Source Packages EI-EE] thudhanh1 lɧ Man.java tH li) TestPackages ftI [Ra Libraries [Test Libraries b.
Bước 2: Thêm thư viện vào. 8 (& ThucHanhi (Ya Source Packages tt + Test Padaoes.ÕÏ{€K ĐHối Library © Add JAR Folder Lpck tr: File nema: J Mysqiconnectar-java-5. Add Librai | Add JAR/Folder, Properties Path [ene gutta verable> | [iow ©) Absolute Path F4ATuarlDu leu bai gengLap trrk me) mysab-connecter-jave-S.10-bin jar oan 3 | Files oftype: | Classaath Entry (folder, ZP or JAR fie) BÀI 1: LẬP TRÌNH KẾT NOI co so DU LIEU a c. Bước 3: Tạo lớp chứa kết nối từ chương trình và mysal.
mm Build j Clean and Build 4 Clean i ˆ các ở la lim a a EM Pore Java Package. Java Interfac JPanel Form. [R L] ti Em JFrame Form. oO New Java Class Steps 1.
Choose File Type 2. Name and Location a import java.*; public class MyConnection { =] public Connection getConnection () { try{ Class. forName String URL = Connection con = eee Connection (URL) ; Name and Location Class naires) Project: FTPServer Location Source Packages pos Z database zeturn con; địa chỉ server HEEIARIE } catch (Exception ex) { JoptionPane. shovMessageDialog (null, ex.toString(), "Loi", JOptionPane return null; d.
Bước 4: Tạo lớp truy xuất CSDL, và sau này khi cần truy xuất CSDL, ta chỉ cần gọi lớp này ra và thực thi các hàm bên trong nó. © New Java Class Steps 1, Choose File Type 2. Name and Location Name and Location Class Name: Project: FTPServer Location: | Source Packages a BÀI 1: LẬP TRÌNH KẾT NỗI Cữ Sử DỮ LTỆU import import import public } } java.Statement; class DBAccess { private Connection con; private Statement stmt; public DBAccess() { try { MyConnection mycon=new MyConnection(); con = mycon.getConnection (); stmt=con. createStatement (); } catch (Exception e) { } public int Update (String str){ try{ int i=stmt.executeUpdate (str); return i; jeatch(Exception e){ return -1; } public ResultSet Query(String srt){ try { ResultSet rs=stmt.