Tải bản đầy đủ (.pptx) (27 trang)

Tìm hiểu framework spring và xây dựng ứng dụng quản lý nhạc phía client

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.15 MB, 27 trang )

TRƯỜNG ĐẠI HỌC AN GIANG
KHOA KỸ THUẬT – CÔNG NGHỆ - MÔI TRƯỜNG

BÁO CÁO KHÓA LUẬN TỐT NGHIỆP
Đề tài: TÌM HIỂU FRAMEWORK SPRING
VÀ XÂY DỰNG ỨNG DỤNG QUẢN LÝ NHẠC PHÍA CLIENT
GVHD: Th.S Huỳnh Lý Thanh Nhàn


Nội dung

• Lý do thực hiện đề tài
• Cơ sở lý thuyết:


Spring framework



AngularJS



Cài đặt ứng dụng



Kết luận

2



Lý do thực hiện đề tài

-

16.2% dự án là hoàn thành đúng hạn và nằm trong giới hạn ngân sách.

-

Và hơn 83.8% dự án thất bại hoặc không đáp ứng được những yêu cầu ban đầu
3

⇒ Do các thành phần quá phụ thuộc lẫn nhau, chồng chéo, không có tính sử dụng lại.

3

5
7

- Ngoài ra chi phí cho việc bảo trì và mở rộng hệ thống luôn lớn hơn nhiều lần so với các pha khác.
15
67

Xác định yêu cầu

Đặt tả

Thiết kế

Lập trình


Kiểm thử

Bảo trì

3


Lý do thực hiện đề tài (tt)

-

Hầu hết các hệ thống đều được phát triển trên nền web.

- Công nghệ di động đang ngày càng trở nên phổ biến, số lượng người sử dụng và truy cập
qua các thiết bị di động tăng một cách nhanh chóng.

=> Do đó chúng tôi thực hiện đề tài “Tìm hiểu Framework Spring và xây dựng ứng dụng quản lý nhạc phía client”.

4


Spring framework

-

Là framework Java mã nguồn mở được sử dụng nhiều nhất hiện
nay.

-


Spring có cách tạo và liên kết các thành phần rất riêng và hữu
ích nhờ vào IoC container và Dependencies Injection (DI).

-

Được giới thương mại công nhận như một framework có tầm
quan trọng trong chiến lược kiến tạo phần mềm

5


Spring framework (tt)

Spring được sử dụng rộng rãi nhờ:
- Đơn giản: Spring framework thực sự rất đơn giản vì nó áp dụng mô hình POJO (Plain Old Java Objects) và POJI (Plain Old Java
Interfaces).
- Dễ dàng kiểm soát lỗi: Môi trường giả lập đơn giản. Có thể sử dụng Console để kiểm thử các thành phần riêng lẽ.
- Ít phụ thuộc: Trong Spring các đối tượng ít phụ thuộc lẫn nhau, đây là vấn đề cốt lõi của Spring framework -> dễ sửa đổi, nâng cấp
bảo trì.

6


Spring MVC

-

Spring MVC cung cấp kiến trúc Model – View - Controller và các
components sẵn có để sử dụng và phát triển ứng dụng web

một cách nhanh chóng và linh hoạt.

-

Spring MVC được thiết kế xung quanh Dispatcher Servlet để xử
lý tất cả các HTTP request và HTTP response.

7


Spring MVC (tt)
Mô hình MVC là kết quả của việc tách các khía cạnh khác nhau của ứng dụng (logic đầu vào, các xử lý logic, UI) trong khi đó cung cấp một sự kết
hợp giữa các thành phần đó một cách “lỏng lẻo”.

-

Model: đóng gói dữ liệu ứng dụng và bao gồm các POJO.
View: Chịu trách nhiệm nhận giá trị của model và vẽ ra trang HTML mà trình duyệt có thể hiển thị được.
Controller: Chịu trách nhiệm nhận và xử lý các yêu cầu từ người dùng và tạo các model phù hợp và trả về cho view

8


Spring MVC (tt)

Mô hình Spring MVC và sơ đồ luồng xử lý

9



Spring Security

-

Spring Security cung cấp các giải pháp để bảo vệ một ứng dụng được phát triển bằng Spring framework.
Thực hiện 2 nhiệm vụ chính của việc bảo mật ứng dụng là "xác thực" (authentication) và "ủy quyền" (authorization) hay "kiểm soát truy cập"
(access - Scontrol)




Xác thực là quá trình xác nhận và chứng thực một principal.
Uỷ quyền đề cập đến quá trình quyết định có một principal được phép thực hiện những hành động gì trong phạm vi ứng dụng của
chúng ta.

10


Spring Security (tt)

Sơ đồ cơ chế bảo vệ ứng dụng REST
API với Spring Security

11


AngularJS
Ngày nay các ứng dụng web hiện đại
thường được xây dựng như một Single
Page Application (SPA) và AngularJS là

một framework tuyệt vời để xây dựng
1 SPA

12


AngularJS (tt)

Những đặc trưng nổi bật tạo nên
sức mạnh cho AngularJS

13


AngularJS (tt)
MVC giúp chúng ta tách ứng dụng thành 3 thành phần khác nhau. Model (xử lý, truy xuất database), View (giao diện) và Controller (điều hướng
yêu cầu từ người dùng)

Đối với Angular, View sẽ là DOM, Controller là các hàm JavaScript, còn Model sẽ là dữ liệu được lưu ở thuộc tính của các đối tượng trong
JavaScript.

14


AngularJS (tt)

One-way binding và Two-way binding
15



AngularJS (tt)
Directives thực sự là đặc điểm tạo nên một khoảng cách lớn giữa Angular và bất kỳ framework JavaScript khác.
Directives đề cập đến một tính năng để mở rộng HTML, việc dùng directive sẽ giảm thiểu được số lượng thẻ HTML, code HTML nhìn sẽ gọn gàng
và sáng sủa hơn.
Directtive không chỉ giới hạn một phần tử HTML mà còn có thể là thuộc tính, lớp hoặc các chú thích HTML. AngularJS cung cấp cho chúng ta 3
loại directive:





Directive dạng element (một thẻ HTML) viết tắt là E
Directive dạng attribute (thuộc tính của một thẻ HTML) viết tắt là A
Directive dạng class(class CSS) viết tắt là C

16


Cài đặt ứng dụng

Mô hình ứng dụng Music Manager

17


Cài đặt ứng dụng (tt)

Module Client và Module Server của ứng dụng
18



Cài đặt ứng dụng (tt)

19


Cài đặt ứng dụng (tt)

Nội dung 1 message

20


Cài đặt ứng dụng (tt)

Response cho request update 1 bài hát

21


Cài đặt ứng dụng (tt)

Giao diện chương trình

22


Kết quả đạt được
Về mặt lý thuyết:
- Nắm được kiến trúc tổng quan của Spring Framework cũng như các nguyên lý cơ bản và cơ chế hoạt động của framework này.

- Nắm được mô hình web MVC trong Spring framework và các cơ chế để bảo mật một ứng dụng web được hỗ trợ trong module Spring Security.
- Hiểu cơ chế giao tiếp giữa client và server trong mô hình web hiện đại theo hướng RESTful service; cách giao tiếp giữa các thành phần của một
hệ thống hoặc giữa các hệ thống với nhau thông qua mô hình Messaging system.

23


Kết quả đạt được (tt)
Về mặt ứng dụng:
- Thiết kế và cài đặt được ứng dụng web với mô hình web server và data server tách biệt nhau, giao tiếp với nhau thông qua ActiveMQ.
- Xây dựng được ứng dụng web dạng SPA mà việc giao tiếp với server thông qua RESTful service với sự hỗ trợ của AngularJS.
- Thiết kế giao diện người dùng với HTM5 và Bootstrap có hỗ trợ responsive.
- Xây dựng thành công ứng dụng quản lý nhạc với đầy đủ các chức năng cơ bản.
- Xây dựng thành công một ứng dụng quản lý nhạc trên nền web có áp dụng các công nghệ mới trong quá trình phát triển một ứng dụng Web
enterprise hiện đại.

24


Hạn chế và khó khăn

Các chức năng cơ bản của ứng dụng đã hoàn thành tốt, tuy nhiên do yêu cầu và phạm vi đề tài chỉ dừng lại ở mức demo công nghệ nên ứng
dụng chưa hấp dẫn.
Hạn chế về vật chất, không có host trên internet có cài đặt đầy đủ các phần mềm cần thiết tạo khó khăn trong việc thực hiện demo chương trình
trên internet. Vấn đề triển khai những công nghệ nêu trên không khó về mặt kỹ thuật nhưng phải xây dựng một cơ sở hạ tầng đầy đủ và tốt để có
thể thực thi ứng dụng

25



×