JavaServer Faces
Nhóm 4
Nội Dung Trình Bày
1
Giới Thiệu JSF
22
Kiến Trúc JSF
33
Các Thành Phần JSF
44
Ưu Điểm-Khuyến Điểm
5
Demo & QA
Giới Thiệu JSF
•
•
Viết Tắt của JavaServer Faces
1 Framework nhằn làm đơn giản hóa việc phát
triển giao diện
•
Một bước tiến trong việc phát triển web,nó xậy
dựng trên servlet API và JSP
Craig McClanahan
Giới Thiệu JSF
• JSF Bao Gồm:
Tập hàm API để phát triển các UI,xữ lý sự kiện,kiểm
tra dữ liệu đầu vào,qui định về phân trang và hổ trợ đa
ngôn ngữ cho người dùng.
Một số thành phần(Component) có sẵn.
Hổ trợ thư viện thẻ phong phú
Khả năng quản lý các trạng thái tốt
Craig McClanahan
Giới Thiệu JSF
•
Mục tiêu của JSF:
Tạo ra một bộ khung tốt để gắng các thành phần của
GUI vào,nhằm làm đơn giản hóa việc phát triển giao
diện
Tạo ra các lớp java cơ sở để
quản lý các thành
phần,sự kiện của các thành phần và chu kỳ sống của
nó trong giao diện
Cung cấp các thành phần GUI chung bao gồm các
thành phần HTML input.
Craig McClanahan
Nội Dung Trình Bày
1
Giới Thiệu JSF
22
Kiến Trúc JSF
33
Các Thành Phần JSF
44
Ưu Điểm-Khuyến Điểm
5
Demo & QA
Kiến Trúc JavaSever Faces
•
•
Kiến Trúc MVC
Kiến Trúc JSF
Kiến Trúc JavaSever Faces
Kiến Trúc MVC
• Chia ứng dụng ra làm 3 phần:
Model
View
Control
•
Các thành phần có trách nhiệm duy nhất và không phụ thuộc lẫn
nhau.
Kiến Trúc JavaSever Faces
Kiến Trúc MVC
• Thành phần Model:
Lưu trữ dữ liệu xuống csdl
Kiểm tra dữ liệu trước khi thao tác với dữ liệu
Xữ lý hầu như tất cả các nghiệp vụ
Kiến Trúc JavaSever Faces
Kiến Trúc MVC
• Thành phần View:
Hiển thị thông tin cho người dùng
Nhận dữ liệu từ người dùng đưa vào
Dữ liệu nhận từ view sẽ được chuyển xuống model và kiểm tra trước khi xữ lý
Kiến Trúc JavaSever Faces
Kiến Trúc MVC
• Thành phần controller:
Tầng trung gian giữa Model và View
Nhận yêu cầu từ client
Sinh ra kết quả cho người dùng
Các thành phần của Controller là: ActionServlet,ActionForm…vv
Kiến Trúc MVC
Thể hiện dữ liệu tới người dùng
Như JSP, HTML,….
Truy cập, tương tác với dữ liệu
Model
Như JavaBean, EJB, ….
Kiểm soát yêu cầu, và lựa chọn View trả về
Như JavaServlet
Kiến Trúc JavaSever Faces
Kiến Trúc JSF
HTML
HTML
Desktop
Desktop
RenderKit
RenderKit
browser
browser
App
App
Front
Front
Ctrl
Ctrl
Phone
Phone
Back
Back
JSF Page
end
end
WML
WML
RenderKit
RenderKit
Kiến Trúc JavaSever Faces
Kiến Trúc JSF
•
•
Giống như kiến trúc MVC
Front Controller là 1 FacesServlet vai trò của Controller giống như người gác
cổng
•
Cấu trúc của JSF giống như dạng cây. Mỗi node là 1 component. FacesServlet
có trách nhiệm dịch componet sang mã HTML,WML
•
Các thành phần trên kết hợp với Backend Model gọi là Backing bean để XL
sự kiện
Nội Dung Trình Bày
1
Giới Thiệu JSF
22
Kiến Trúc JSF
33
Các Thành Phần JSF
44
Ưu Điểm-Khuyến Điểm
5
Demo & QA
Các Thành Phần Của JSF
Các Thành Phần Bao Gồm:
•
•
•
•
•
•
•
•
UI Component
UI Componet Class
Mô hình Conversion
Model
Renderer
Validators
Backing Beans
Event & Listent
Navigation
Các Thành Phần Của JSF
Thành Phần Ui Componet:
•
•
Được sữ dụng trong việc phát triển giao diện web bằng JSF
Bao gồm các thành phần giản đơn như Button đến phức tạp như table và kết
hợp các thành phần đó lại với nhau
•
•
Model
Thêm hoặc bớt các component 1 cách đơn giản
Có thể truy cập đến thẻ tag của JSF thông Quan JSP
Các Thành Phần Của JSF
Thành Phần Ui Componet Class:
•
•
Bao gồm các hàm xữ lý cho các UI Component
JSF cung cấp cho ta sẳn 1 bộ công cụ để xây dựng UI Componet Class.Do đó
chúng ta có thể mở rộng UI Componet bằng cách tạo UI Componet riêng cho
mình
•
UI Component Class được kế thừ từ UI Componet Base
Các Thành Phần Của JSF
Mô Hình Conversion:
•
•
Mô hình cho phép kết hợp dữ liệu với mô hình Server-Side
Hai thành phần của dữ liệu gồm:
Model View
Presentaion View
•
Thành phần của dữ liệu có thể converted giữa model view và presentation view
Các Thành Phần Của JSF
Thành Phần Renderer:
•
•
•
•
Hiển thị các component
Chuyển giá trị input thành giá trị của componet
1 Render có thể làm việc với 1 hoặc nhiều Component
Được tổ chức thành các renderkit tương ứng cho các output khác nhau.
o HTML
o Wireless-Makeup Language(WML)
Các Thành Phần Của JSF
Thành Phần Validator:
• Kiểm tra dữ liệu người dùng nhập vào
• Một componet có nhiều validator
• 3 Cách:
− Ở mức UI Component
− Các phương thức Validator ở Backing Beans
− Sử dụng lớp Validator
Các Thành Phần Của JSF
Thành Phần Validator:
•
Kiểm tra dữ liệu người dùng nhập vào
− JSF có 1 tập các Validator cơ bản.
− Người dùng có thể viết thêm
− Khi validator bắt được lỗi, nó add error message vào message list
Các Thành Phần Của JSF
Thành Phần Backing Beans:
• Mô hình bao gồm:
− Tầng dữ liệu
− Tầng giao diện
− Controller: Giữa 2 tầng trên
• JSF: Controller=Backing Beans
• Bao gồm:
− Các thuộc tính nhận từ người dùng
− Event listener method
Các Thành Phần Của JSF
Thành Phần Backing Beans:
•
Liên kết UI Componet và Backing Beans là JSF Expression Language
Các Thành Phần Của JSF
Thành Phần Backing Beans: