Bài giảng Nhập môn lập trình Java - Bài 12: Java Beans - Võ Tấn Dũng

pdf 35 trang ngocly 3610
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Nhập môn lập trình Java - Bài 12: Java Beans - Võ Tấn Dũng", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_nhap_mon_lap_trinh_java_bai_12_java_beans_vo_tan_d.pdf

Nội dung text: Bài giảng Nhập môn lập trình Java - Bài 12: Java Beans - Võ Tấn Dũng

  1. TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN TP.HCM NHẬP MÔN JAVA BÀI 12 JAVA BEANS GIẢNG VIÊN: VÕ TẤN DŨNG GV: Võ GV: Võ Tấn Dũng
  2. PHẦN 1 TỔNG QUAN JAVABEANS GV: Võ GV: Võ Tấn Dũng
  3. KHÁI NIỆM JAVA BEANS • Kiến trúc JavaBean TM dựa trên mô hình component. Mô hình này cho phép các nhà phát triển phần mềm tạo ra các đơn vị phần mềm có tên gọi là component. • Các component đuợc lắp ghép vào các applet, các ứng dụng, các servlet hoặc vào các component phức tạp hơn bằng các công cụ phát triển phần mềm trực quan. • Các JavaBean component được gọi là beans. • Beans có thể được thay đổi, tùy biến theo ý muốn. Ta có thể chọn beans từ toolbox, kéo thả vào ứng dụng, hiệu chỉnh hành vi và diện mạo của bean, định nghĩa sự tương tác của bean với các bean khác, tích hợp beans vào các ứng dụng, vào applet hoặc vào các beans mới. 3 GV: Võ GV: Võ Tấn Dũng
  4. CÁC LOẠI JAVA BEANS Các beans khác nhau về chức năng và mục đích sử dụng. Quá trình lập trình trong thực tiễn, chúng ta sẽ thấy một số loại beans sau: • GUI (graphical user interface) • Non-visual beans (ví dụ như một spelling checker) • Animation applet. • Spreadsheet application. 4 GV: Võ GV: Võ Tấn Dũng
  5. MỘT SỐ KHÁI NIỆM TRONG JAVABEANS • Introspection: (phân tích bên trong) dùng để khám phá các đặc điểm của bean • Properties: là các đặc điểm về diện mạo và hành vi của bean, chúng được thay đổi lúc thiết kế. Các thuộc tính của bean được các introspector phân tích rồi hiển thị ra giúp cho người thiết kế chương trình có thể thao tác được trên bean. • Customization: cấu hình tùy biến lúc thiết kế được thực hiện nhờ thấy được các thuộc tính của bean. Các công cụ để tùy biến bean như: property editors, sophisticated bean customizers. • Event: được các bean dùng để giao tiếp với nhau. Listener bean là bean nhận events. Source bean là bean phát ra event. • Persistence: cho phép các bean lưu trữ và phục hồi các trạng thái của chúng. • Methods: không khác gì so với method trong Java. 5 GV: Võ GV: Võ Tấn Dũng
  6. PHẦN 2 TẠO VÀ SỬ DỤNG JAVABEAN ĐƠN GIẢN GV: Võ GV: Võ Tấn Dũng
  7. CÁC PHẦN MỀM CẦN CÀI ĐẶT 1) Java Standard Development Kit (JDK™) version 6.0 - Download tại: - Hướng dẫn cài đặt tại: javaprogenv/index.html#0.1 2) NetBeans IDE 6.5 - Download tại: - Hướng dẫn cài đặt tại: javaprogenv/index.html#0.2 7 GV: Võ GV: Võ Tấn Dũng
  8. TẠO MỘT NETBEANS PROJECT • Chạy phần mềm NetBeans 6.5 lên. • Chọn File từ top-level menu rồi chọn New Project. • Hộp thoại New Project xuất hiện. • Chọn Java trong phần Categories và chọn Java Application trong phần Projects. • Nhấp Next. • Trong vùng Name and Location, ở phần Project Name, nhập chuỗi BeansExample để đặt tên cho project. • Ở phần Create Main Class, nhập vào chuỗi BeansExample. • Nhấp Finish để hoàn tất việc tạo project này. 8 GV: Võ GV: Võ Tấn Dũng
  9. TẠO MỘT NETBEANS PROJECT (tt) 9 GV: Võ GV: Võ Tấn Dũng
  10. TẠO MỘT NETBEANS PROJECT (tt) 10 GV: Võ GV: Võ Tấn Dũng
  11. VIẾT FILE SimpleBeanJLabel.java SimpleBeanJLabel là một ví dụ về visual JavaBean. • Nhấp phải BeansExample rồi chọn New->Java Class. • Quan sát thấy vùng Name and Location của hộp thoại New Java Class xuất hiện. 11 GV: Võ GV: Võ Tấn Dũng
  12. VIẾT FILE SimpleBeanJLabel.java (tt) • Ở phần Class Name, nhập vào chuỗi SimpleBeanJLabel. • Nhấp Finish. 12 GV: Võ GV: Võ Tấn Dũng
  13. VIẾT FILE SimpleBeanJLabel.java (tt) • Quan sát sẽ thấy có SimpleBeanJLabel.java vừa mới xuất hiện trong vùng soạn thảo của NB6.5, viết code cho file này như sau: /* SimpleBeanJLabel.java*/ import java.awt.Color; import java.beans.XMLDecoder; import javax.swing.JLabel; import java.io.Serializable; public class SimpleBeanJLabel extends JLabel implements Serializable { public SimpleBeanJLabel() { setText( "Hello world!" ); setOpaque( true ); setBackground( Color.RED ); setForeground( Color.YELLOW ); setVerticalAlignment( CENTER ); setHorizontalAlignment( CENTER ); } } 13 GV: Võ GV: Võ Tấn Dũng
  14. VIẾT FILE SimpleBeanJLabel2.java •Với các bước làm tương tự như SimpleBeanJLabel, ta tạo tiếp SimpleBeanJLabel2.java. SimpleBeanJLabel2 có thêm một thuộc tính (property) của chính nó là labelType. 14 GV: Võ GV: Võ Tấn Dũng
  15. VIẾT FILE SimpleBeanJLabel2.java (tt) 15 GV: Võ GV: Võ Tấn Dũng
  16. VIẾT FILE SimpleBeanJLabel2.java (tt) • Nội dung của SimpleBeanJLabel2.java như sau: /* SimpleBeanJLabel2.java*/ public class SimpleBeanJLabel2 extends SimpleBeanJLabel { private String labelType; public String getLabelType() { return labelType; } public void setLabelType(String labelType) { this.labelType = labelType; } } 16 GV: Võ GV: Võ Tấn Dũng
  17. TẠO TẬP TIN JAR • Thực hiện Build project vừa mới tạo trong NB6.5 sẽ tạo ra jar file, bằng cách như sau: nhấp phải node BeansExample trong vùng Project rồi chọn Build (hoặc Run), kết quả sẽ tạo ra tập tin jar chứa SimpleBeanJLabel bean. 17 GV: Võ GV: Võ Tấn Dũng
  18. TẠO TẬP TIN JAR (tt) • Trong thư mục C:\myjavafxprojects\BeansExample\dist ta thấy có tập tin BeansExample.jar. Xem nội dung của tập tin jar này trong NB6.5 như sau: 18 GV: Võ GV: Võ Tấn Dũng
  19. ĐƯA BEAN VÀO BUIDER TOOL Tạo một NetBeans Project mới có tên là BeansUserExample: • Chọn File từ top-level menu rồi chọn New Project. • Quan sát thấy hộp thoại New Project xuất hiện. • Chọn Java trong vùng Categories rồi chọn Java Application trong vùng Projects. • Nhấp Next. • Trong vùng Name and Location, ở vùng Project Name, ta nhập chuỗi BeansUserExample. • Ở phần Create Main Class, nhập chuỗi BeansUserExample. • Nhấp Finish. Quan sát trong NB6.5 ta thấy project vừa mới tạo là BeansUserExample đã xuất hiện trong vùng Projects và thấy xuất hiện BeansUserExample.java trong cửa sổ soạn thảo của NB6.5 19 GV: Võ GV: Võ Tấn Dũng
  20. ĐƯA BEAN VÀO BUIDER TOOL(tt) • Nhấp phải BeansUserExample rồi chọn New/JFrame Form. 20 GV: Võ GV: Võ Tấn Dũng
  21. ĐƯA BEAN VÀO BUIDER TOOL(tt) • Quan sát vùng Name and Location của hộp thoại New JFrame Form vừa mới xuất hiện. • Ở vùng Class Name, nhập chuỗi MyForm. • Nhấp Finish. 21 GV: Võ GV: Võ Tấn Dũng
  22. ĐƯA BEAN VÀO BUIDER TOOL(tt) • Quan sát thấy phần Design view của MyForm.java được trình bày ở giữa của NB6.5 và phần Palette được trình bày ở bên phải của NB6.5 22 GV: Võ GV: Võ Tấn Dũng
  23. ĐƯA BEAN VÀO BUIDER TOOL(tt) • Tiếp theo là công đoạn đưa SimpleBeanJLabel vào Palete: Nhấp phải vào một điểm trống trên Palete, chọn tiếp Palete Manager từ pop-up menu vừa mới xuất hiện 23 GV: Võ GV: Võ Tấn Dũng
  24. ĐƯA BEAN VÀO BUIDER TOOL(tt) • Trong hộp thoại Palette Manager vừa mới xuất hiện. • Chọn Add From JAR. Ta đang gắn một file jar có chứa các beans vào palete. Ta cũng có thể thực hiện cách khác, đó là chọn Add from Project, cách này sẽ cho ta thấy các bean từ một Project. 24 GV: Võ GV: Võ Tấn Dũng
  25. ĐƯA BEAN VÀO BUIDER TOOL(tt) • Quan sát hộp thoại Install Components to Palette vừa mới xuất hiện. • Mở rộng thư mục dist của BeansExample project, trong thư mục này có chứa BeansExample.jar mà ta tạo ở bước trước đó. • Chọn BeansExample.jar rồi nhấp Next. 25 GV: Võ GV: Võ Tấn Dũng
  26. ĐƯA BEAN VÀO BUIDER TOOL(tt) • Quan sát ta thấy các bean chứa trong tập tin BeansExample.jar được liệt kê ở đây. • Chọn SimpleBeanJLabel và SimpleBeanJLabel2 bean rồi nhấp Next. 26 GV: Võ GV: Võ Tấn Dũng
  27. ĐƯA BEAN VÀO BUIDER TOOL(tt) • Chọn Beans (hay bất cứ category nào mà ta muốn đưa bean vào). • Nhấp Finish. 27 GV: Võ GV: Võ Tấn Dũng
  28. ĐƯA BEAN VÀO BUIDER TOOL(tt) • Ta thấy xuất hiện hộp thoại Palette Manager như sau. • Mở rộng mục Beans ta thấy SimpleBeanJLabel và SimpleBeanJLabel2 beans đã xuất hiện ở đây. • Nhấp Close. 28 GV: Võ GV: Võ Tấn Dũng
  29. THAY ĐỔI THUỘC TÍNH CỦA BEAN Đưa SimpleBeanJLabel vào design window. • Quan sát thấy SimpleBeansJLabel bean ở trong Beans category của Palette. • Kéo thả SimpleBeanJLabel vào design window. • Quan sát thấy nhãn Hello world! đang có màu nền là màu đỏ (background) SimpleBeanJLabel 29 GV: Võ GV: Võ Tấn Dũng
  30. THAY ĐỔI THUỘC TÍNH CỦA BEAN(tt) Thao tác trên các thuộc tính của SimpleBeansJLabel bean: • Nhấp vào button 3 dấu chấm ( ) của thuộc background property để chọn màu mà ta muốn đổi. 30 GV: Võ GV: Võ Tấn Dũng
  31. THAY ĐỔI THUỘC TÍNH CỦA BEAN(tt) • Hộp thoại để chọn màu nền (background) xuất hiện. • Chọn bất cứ màu nào mà ta muốn. • Nhấp OK. 31 GV: Võ GV: Võ Tấn Dũng
  32. THAY ĐỔI THUỘC TÍNH CỦA BEAN(tt) • Thay đổi text property của bean thành chuỗi Sang Shin. • Quan sát design window ta thấy màu nền và chuỗi chữ của nhãn đã thay đổi. 32 GV: Võ GV: Võ Tấn Dũng
  33. THAY ĐỔI THUỘC TÍNH CỦA BEAN(tt) • Properties of the SimpleBeansJLabel bean are changed 33 GV: Võ GV: Võ Tấn Dũng
  34. THAY ĐỔI THUỘC TÍNH CỦA BEAN(tt) Ta tiếp tục thay đổi thuộc tính cho SimpleBeanJLabel2 • Kéo thả SimpleBeanJLabel2 bean vào design window. • Quan sát nhãn Hello world! có màu nền là màu đỏ. • Thay đổi labelType property của bean từ simple đến null hoặc bất cứ màu gì mà ta muốn SimpleBeanJLabel2 34 GV: Võ GV: Võ Tấn Dũng
  35. HẾT BÀI 12 GV: Võ GV: Võ Tấn Dũng