Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 120 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
120
Dung lượng
5,51 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP NGÀNH CƠNG NGHỆ THƠNG TIN TÌM HIỂU SPRING RESTFUL API VÀ XÂY DỰNG WEBSITE BÁN SÁCH ONLINE GVHD:NGUYỄN MINH ĐẠO SVTT:ĐÀO THỊ MỸ MSSV:15110252 SVTT:NGUYỄN VIẾT THANH MSSV:15110310 SKL 0 7 Tp Hồ Chí Minh, tháng 07/2019 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM - - ĐÀO THỊ MỸ : 15110252 NGUYỄN VIẾT THANH : 15110310 Đề Tài: TÌM HIỂU SPRING RESTFUL API VÀ XÂY DỰNG WEBSITE BÁN SÁCH ONLINE KHÓA LUẬN TỐT NGHIỆP KỸ SƯ CNTT GIÁO VIÊN HƯỚNG DẪN ThS NGUYỄN MINH ĐẠO KHÓA 2015 - 2019 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM - - ĐÀO THỊ MỸ : 15110252 NGUYỄN VIẾT THANH : 15110310 Đề Tài: TÌM HIỂU SPRING RESTFUL API VÀ XÂY DỰNG WEBSITE BÁN SÁCH ONLINE KHÓA LUẬN TỐT NGHIỆP KỸ SƯ CNTT GIÁO VIÊN HƯỚNG DẪN ThS NGUYỄN MINH ĐẠO KHÓA 2015 - 2019 an ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM CỘNG HÒA Xà HỘI CHỦ NGHĨA VIỆT NAM KHOA CÔNG NGHỆ THÔNG TIN Độc lập – Tự – Hạnh phúc PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Họ tên Sinh viên 1: Đào Thị Mỹ MSSV 1: 15110252 Họ tên Sinh viên 2: Nguyễn Viết Thanh MSSV 2: 15110310 Ngành: Công nghệ Thơng tin Tên đề tài: Tìm hiểu Spring Restful API xây dựng website bán sách online Họ tên Giáo viên hướng dẫn: Th.S Nguyễn Minh Đạo NHẬN XÉT Về nội dung đề tài khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: Tp Hồ Chí Minh, ngày 12 tháng 07 năm 2019 Giáo viên hướng dẫn (Ký & ghi rõ họ tên) Th.S Nguyễn Minh Đạo an ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM CỘNG HÒA Xà HỘI CHỦ NGHĨA VIỆT NAM KHOA CÔNG NGHỆ THÔNG TIN Độc lập – Tự – Hạnh phúc PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Họ tên Sinh viên 1: Đào Thị Mỹ MSSV 1: 15110252 Họ tên Sinh viên 2: Nguyễn Viết Thanh MSSV 2: 15110310 Ngành: Công nghệ Thơng tin Tên đề tài: Tìm hiểu Spring Restful API xây dựng website bán sách online Họ tên Giáo viên hướng dẫn: TS Lê Vĩnh Thịnh NHẬN XÉT Về nội dung đề tài khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: Tp Hồ Chí Minh, ngày 12 tháng 07 năm 2019 Giáo viên hướng dẫn (Ký & ghi rõ họ tên) TS Lê Vĩnh Thịnh an LỜI CẢM ƠN Lời nhóm em xin chân thành cảm ơn thầy Nguyễn Minh Đạo hỗ trợ giúp đỡ tận tình nhóm em Đã cho chúng em lời khuyên chân thành bổ ích đóng góp cho nhóm em ý kiến để hồn thành khóa luận tốt Chúng em xin gửi lời cảm ơn đến tất thầy cô khoa Công nghệ thông tin thầy cô khác trường đại học Sư phạm Kỹ Thuật TP.HCM dạy cho chúng em kiến thức quý báu để áp dụng vào khóa luận Trong q trình làm khóa luận này, chúng em cố gắng hoàn thành đề tài thời gian hạn chế thiếu kinh nghiệm nên cịn nhiều thiếu sót Nhóm em mong nhận thông cảm bảo thầy/cô để nhóm em học hỏi, bổ sung kiến thức để áp dụng cơng việc sau Nhóm em xin chân thành cảm ơn! an ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM CỘNG HÒA Xà HỘI CHỦ NGHĨA VIỆT NAM KHOA CÔNG NGHỆ THÔNG TIN Độc lập – Tự – Hạnh phúc ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP Họ tên SV thực hiện: Đào Thị Mỹ Mã Số SV: 15110252 Họ tên SV thực hiện: Nguyễn Viết Thanh Mã Số SV: 15110310 Chuyên ngành: Công Nghệ Phần Mềm Tên đề tài: Tìm hiểu Spring Restful API xây dựng website bán sách online Giáo viên hướng dẫn: ThS Nguyễn Minh Đạo Nội dung thực hiện: Lý thuyết: - Tìm hiểu Spring Framework: Spring MVC, Spring Security - Tìm hiểu kiến trúc Restful API Thực hành: Áp dụng xây dựng website bán sách online Kế hoạch thực hiện: STT Thời gian 18/03/2019 đến 24/03/2019 - Khảo sát thực trạng - Phân tích yêu cầu, nhận diện tác nhân chức sơ đồ Usecase 25/03/2019 đến 31/03/2019 - Đặc tả Usecase, thiết kế database - Tìm hiểu Spring, Spring MVC, Hibernate - Tìm hiểu kiến trúc Restful API Công việc an Ghi 01/04/2019 đến 07/04/2019 - Thiết kế sở liệu từ phân tích Usecase - Xác định hình luồng chạy chức - Xây dựng kiến trúc Restful API cho chức 08/04/2019 đến 14/04/2019 - Thiết kế giao diện trang: đăng ký, trang chủ - Viết API: đăng ký, hiển thị sách mua nhiều nhất, hiển thị sách vừa cập nhật - Map API với giao diện tương ứng 15/04/2019 đến 21/04/2019 - Thiết kế giao diện trang admin: quản lý chức thêm, xóa, sửa tác giả; tình trạng đơn hàng, tốn, nhà cung cấp - Viết API: quản lý chức thêm, xóa, sửa - Map API với giao diện tương ứng 22/04/2019 đến 28/04/2019 - Thiết kế giao diện trang admin: quản lý chức thêm, xóa, sửa vận chuyển; loại sách, review sách - Viết API: quản lý chức thêm, xóa, sửa - Map API với giao diện tương ứng 29/04/2019 đến 05/05/2019 - Thiết kế giao diện trang admin: quản lý chức thêm, xóa, sửa sách - Viết API: quản lý chức thêm xóa sửa - Map API với giao diện tương ứng 06/05/2019 đến 12/05/2019 - Thiết kế giao diện trang admin: quản lý chức thêm, xóa, sửa hóa đơn, tài khoản - Viết API: quản lý chức thêm xóa sửa - Map API với giao diện tương ứng 13/05/2019 đến 19/05/2019 - Thiết kế giao diện trang: đăng nhập, thông tin cá nhân, chức khuyến - Viết API: đăng nhập, thông tin cá nhân, khuyến - Map API với giao diện tương ứng an 10 20/05/2019 đến 26/05/2019 - Thiết kế giao diện trang: chi tiết sách, giỏ hàng - Viết API: chi tiết sách, giỏ hàng - Map API với giao diện tương ứng 11 27/05/2019 đến 02/06/2019 - Ứng dụng Spring Security vào website 12 03/06/2019 đến 09/06/2019 - Thiết kế giao diện trang: hóa đơn, tốn User - Viết API: hóa đơn, tốn - Map API với giao diện tương ứng 13 10/06/2019 đến 16/06/2019 - Nghiên cứu thực thêm chức send mail tự động xem lịch sử sách tìm kiếm 14 17/06/2019 đến 23/06/2019 - Chạy demo, kiểm thử chức website - Fix lỗi phát sinh trình demo, kiểm thử 15 24/06/2019 đến 30/06/2019 - Viết báo cáo, làm powerpoint Tp Hồ Chí Minh, ngày 16 tháng 07 năm 2019 Người viết đề cương (Ký & ghi rõ họ tên) Ý kiến giáo viên hướng dẫn (Ký & ghi rõ họ tên) Th.S Nguyễn Minh Đạo an MỤC LỤC MỤC LỤC DANH MỤC BẢNG BIỂU 12 DANH MỤC HÌNH ẢNH 14 PHẦN MỞ ĐẦU 16 Tính cấp thiết đề tài 16 Mục đích đề tài 16 Cách tiếp cận phương pháp nghiên cứu 16 Phân tích cơng trình có liên quan 17 Kết dự kiến đạt 17 PHẦN NỘI DUNG 18 CHƯƠNG 1: SPRING FRAMEWORK 18 1.1 Sự đời Spring 18 1.2 Module Spring 18 1.3 Spring MVC 21 1.3.1 Giới thiệu Spring MVC 21 1.3.2 Mô hình Spring MVC 22 1.3.3 Các tính Spring MVC 23 1.3.4 The DispatcherServlet 23 1.3.5 Implementing Controllers 25 1.3.6 Handler mappings 25 1.3.7 Resolving views 26 1.4 Spring security 26 1.4.1 Giới Thiệu 26 1.4.2 Các thành phần cốt lõi 27 1.4.3 Áp dụng 28 1.5 Spring Data JPA 29 1.5.1 JPA gì? 29 1.5.2 Hibernate 29 1.5.3 JPA Spring 30 1.6 Đặc điểm Spring 31 1.7 Ưu nhược điểm Spring 31 CHƯƠNG 2: RESTFUL API 33 2.1 API ? 33 2.2 Rest gì? 33 2.3 Restful API gì? 34 an 3.4.3.13 Giao diện xóa tác giả Hình 3.31: Giao diện xóa tác giả Bảng 3.54: Bảng xử lý giao diện xóa tác giả STT Tên Xử Lý Điều kiện gọi thực Hủy việc xóa Click chọn button “Cancel” tác giả Xóa tác giả có Click chọn button “Delete” tên tương ứng 105 an Ghi 3.4.3.14 Giao diện quản lý Sách Hình 3.32: Giao diện quản lý sách Bảng 3.55: Bảng xử lý giao diện quản lý sách STT Tên Xử Lý Chuyển Điều kiện gọi thực đến Click chọn button “Thêm trang thêm sách sách” Xem thông tin Click chọn tên sách chi tiết tương ứng với sách sách Chuyển muốn xem đến Click chọn button có biểu trang chỉnh sửa tượng edit thông tin sách Thực việc Click chọn button có biểu xóa sách tượng delete dòng tương ứng 106 an Ghi 3.4.3.15 Giao diện chỉnh sửa thông tin Sách Hình 3.33: Giao diện chỉnh sửa thông tin sách Bảng 3.56: Bảng xử lý giao diện chỉnh sửa sách STT Tên Xử Lý Upload Điều kiện gọi thực hình Click chọn “Choose File” ảnh sách dịng có tiêu đề “Hình sách” Upload file đọc Click chọn “Choose File” thử dịng có tiêu đề “File đọc thử” sách Thực thêm Click chọn button “Submit” sách Hủy bỏ việc Click chọn button “Reset” thêm sách 107 an Ghi 3.4.3.16 Giao diện quản lý tài khoản Hình 3.34: Giao diện quản lý tài khoản Bảng 3.57: Bảng xử lý giao diện quản lý tài khoản STT Tên Xử Lý Thực thêm Click chọn button “Thêm tài khoản Điều kiện gọi thực người dùng” Thay đổi quyền Click chọn combobox tương tài khoản ứng với tài khoản cần thay đổi tương ứng cột “Quyền” Thực chỉnh Click chọn button có biểu sửa thơng tin tài tượng edit dòng tương khoản ứng Thực việc Click chọn button có biểu xóa tài khoản tượng xóa dịng tương ứng 108 an Ghi 3.4.3.17 Giao diện Thêm User Hình 3.35: Giao diện thêm tài khoản Bảng 3.58: Bảng xử lý giao diện thêm tài khoản STT Tên Xử Lý Điều kiện gọi thực Thực thêm Click chọn button “Submit” tài khoản Hủy việc thêm Click chọn button “Reset” tài khoản 109 an Ghi 3.5 Kiểm thử phần mềm Bảng 3.59: Kiểm thử phần mềm-Testcase Test case Test case Test steps Expected Result Status ID description REG_01 Kiểm tra đăng Truy cập vào hệ Thông báo lên PASS ký với password thống form đăng ký xác nhận không Thực đăng ký password không khớp account với khớp, yêu cầu password xác nhận nhập lại không khớp REG_02 Kiểm tra có phải Truy cập vào hệ Thông báo lên PASS email hay thống không form đăng ký Thực đăng ký email không hợp định dạng không lệ, yêu cầu nhập phải email LOG _02 Kiểm tra Guest 1.Nhập lại Thông báo PASS đăng nhập thành username vs pass đăng nhập thành công 2.Nhấn công button”Login” Hiển thị hình User LOG _03 Kiểm tra Guest 1.Nhập sai username Thông báo PASS đăng nhập thất pass đăng nhập thất bại bại 2.Nhấn button”Login” CIF_01 Kiểm tra thay 1.Nhập thông tin 1.Thông báo PASS đổi thông tin cá khác với thông tin ban chỉnh sửa thành nhân thành cơng đầu(có thể số điện cơng thoại,giới tính, ) 2.Nhấn button”Lưu” CSE_01 Kiểm tra search 1.Đăng theo từ khóa nhập quyền User 110 an với Liệt kê danh PASS sách cần search 2.Nhập từ khóa với query cần seach database 3.Chọn button search CRE_01 Kiểm tra đọc thử 1.Đăng sách nhập với Một hình PASS quyền User 2.Chọn chờ lên sách muốn đọc 3.Chọn button”Đọc hình chờ trắng Kiểm tra mua 1.Đăng hàng đầu tiên,nếu khơng có Thử” CPU-01 trang nhập với Giỏ hàng hiển PASS quyền User thị số lượng 2.Chọn sách cần sách mua đặt mua 3.Chọn button ”chọn mua” CPU-02 Kiểm tra phẩm sản 1.Đăng nhập có quyền User giỏ hàng với Giỏ hàng PASS không hiển thị số 2.Chọn sách cần lượng mua trùng với sách sách có trùng, thị giỏ hàng số 3.Chọn button”chọn mua” CCT-01 Kiểm hàng tra giỏ 1.Đăng lượng sách giỏ hàng nhập quyền User với Giỏ hàng hiển PASS thị tất 2.Chọn button giỏ sách mua hàng menu CCT-02 Kiểm tra xóa sản 1.Đăng ,giá tiền tổng tiền nhập với Giỏ hàng cập PASS phẩm giỏ quyền User nhật lại sau hàng xóa 111 an sản phẩm 2.Chọn button giỏ đó,giá tiền hàng cập nhật theo menu 3.Chọn sản phẩm muốn xóa CBI-01 Kiểm tra hóa 1.Đăng đơn nhập với Hiện lên đầy đủ PASS quyền User thông 2.Chọn button giỏ hàng tin sách mua,cũng menu thông tin người 3.Một page giỏ hàng dùng muốn mua lên xuất nhập từ form button”Đặt mua” 4.Chọn page giỏ button”Đặt hàng mua” CUS-01 Kiểm tra thao Đăng nhập với + Admin vào PASS tác quản lý user quyền Admin User trang Manage người Kiểm tra vào User dùng admin trang Manage User + User khơng vào trang Manage User CEBO-01 Kiểm tra chỉnh 1.Đăng nhập với Các thông tin PASS sửa thông tin quyền admin sách chỉnh sửa 2.Chọn sách cần thành công chỉnh sửa 3.Chọn button”edit” CABO-01 Kiểm tra thêm 1.Đăng nhập sách quyền admin với Một sách PASS thêm 2.Chọn button”thêm thành công cập sách” nhật 112 an CDBO-01 Kiểm tra xóa 1.Đăng sách nhập với Cuốn sách PASS quyền admin chọn xóa 2.Chọn sách cần chỉnh sửa 3.Chọn button”delete” CCRO-01 Kiểm tra thay 1.Đăng nhập với Quyền user PASS đổi quyền quyền admin user 2.Chọn thay user đổi.Khi đăng muốn thay đổi quyền nhập vào trang 3.Chọn button”edit” quy định quyền 113 an KẾT LUẬN Những kết đạt - Hiểu rõ kiến thức Spring Framework: Spring MVC, Spring Security - Hiểu rõ kiến thức kiến trúc Restful API - Xây dựng thành công website bán sách online với việc áp dụng kiến thức tìm hiểu Những khó khăn gặp phải - Cơng nghệ Bảng 4.1: Khó khăn cơng nghệ dự án STT Rủi ro, khó khăn Cách khắc phục Install Spring Tool Eclipse dẫn Sử dụng STS (Spring Tool Suite) – đến Eclipse nặng chạy chậm Eclipse tích hợp Spring Tool, chuyên dùng cho dự án Spring Sử dụng Spring Security để xử lý Do yếu tố config spring security đăng nhập gây nhiều lỗi có nhiều cách config khác nên cần phải tìm hiểu kỹ để tránh việc phát sinh lỗi 114 an - Con người Bảng 4.2: Khó khăn người dự án STT Rủi ro, khó khăn Cách khắc phục Bất đồng số quan điểm Họp lại để tìm kiếm cách khắc phục tốt cách xem ưu điểm nhược điểm quan điểm thống lấy quan điểm phù hợp mang lại lợi ích cho nhóm tốt Mỗi người cách code Thống format cho code(Ví dụ API đặt cấu trúc nào, code Controller đặt nào, ) Một số vấn đề phức tạp cịn phân Nhóm trước làm bầu nhóm vân trưởng, nhóm trưởng đưa định cuối 115 an - Quy trình nghiệp vụ Bảng 3: Khó khăn quy trình nghiệp vụ dự án STT Rủi ro, khó khăn Cách khắc phục Một số lỗi khó phát sinh Hai thành viên nhóm ngồi trình code lại fix lỗi, chưa có cách giải nhờ mạng google, GVHD, bạn bè, Chức mở rộng Họp lại bàn bạc đảm bảo thời gian làm thêm chức Các cơng việc bị chậm tiến độ Thành viên lại nhóm support nhiệt tình để hồn thành nhanh tiến độ đưa Version Source code ln thay đổi Tìm hiểu sử dụng Git lưu trữ resource, quản lý version Thường xuyên chia công việc với để tránh trường hợp bị xung đột code Ngồi rủi ro, khó khăn nhóm cịn gặp số khó khăn q trình tìm kiếm tài liệu để làm Có q nhiều tài liệu mạng, phải biết cách chọn lọc ,tìm tài liệu để thực đề tài với yêu cầu đề tài tiểu luận chuyên nghành Ưu điểm - Giao diện dễ nhìn, thân thiện với người, giúp người dễ sử dụng - Độ bảo mật đảm bảo mã hóa password đăng nhập - Project thực tế với mong muốn giúp cho người đỡ tốn khoảng thời gian định việc mua sách Hạn chế - Thuật tốn chưa tối ưu hóa - Các file hình ảnh lưu server tốn nhớ server Những kinh nghiệm rút Mỗi dự án tồn rủi ro, khó khăn mà nhóm khơng thể lường hết Nhưng sau dự án nhóm rút số kinh nghiệm cho thân: 116 an - Kỹ mềm (kỹ làm việc nhóm, kỹ giải vấn đề, kỹ đưa ý kiến hay định, ) quan trọng - Việc tuân theo quy trình tốt phải linh động số trường hợp - Sử dụng cơng cụ làm việc nhóm, quản lý project giúp tiết kiệm nhiều thời gian cho việc làm nhóm - Test hoàn thành chức trước qua chức khác giúp giảm thiểu thời gian test sau - Mỗi cá nhân phải có tránh nhiệm với nhóm dự án, chủ động hồn thành công việc, hỗ trợ thành viên khác để đảm bảo sản phẩm tốt hoàn thành hạn - Phải biết xếp thời gian môn học phải biết trách nhiệm làm mơn học để góp phần làm tốt đồ án nhóm - Phải biết hi sinh nhóm, ln ln đặt lợi ích nhóm lên hàng đầu - Phải biết kiên nhẫn với thành viên nhóm, thái độ quan trọng cho thành công project Hướng phát triển tương lai: Mặc dù tồn hạn chế bên trên, với tâm nhóm, website khắc phục tiếp tục nâng cấp, cải tiến nhằm tiến tới hồn hảo hơn: - Có thể thêm số danh mục khác để đa dạng hàng hóa :Dụng cụ học tập, - Nếu thêm số phương thức toán cho người dùng đặt hàng trang web - Nhóm tìm hiểu đưa file API lên S3 AWS để tối ưu hóa dung lượng lưu trữ cho server - Cải tiến code để tối ưu hóa cách tốt giao diện bắt mắt đẹp thu hút người truy cập 117 an TÀI LIỆU THAM KHẢO [1] https://coffeeprogrammingblog.wordpress.com/2016/11/26/gioi-thieu-ve-ejb-trong-java/ [2] http://paginaswebpublicidad.com/questions/19324/aopalliance-la-gi-va-tai-sao-guice-su-dung-no [3] https://lttqstudy.wordpress.com/2011/08/25/mo-hinh-or-mapping/ [4] https://text.relipasoft.com/2017/05/co-ban-ve-rest-va-restfulapi/?fbclid=IwAR2GU1jNEBuVFtAxQLf8i9aWPR_tmLH3AMxRkqLw9yb_DFCTPVqhzuwZVN4 [5] https://viblo.asia/p/web-service-ban-se-chon-rest-hay-soapByEZkWyAZQ0?fbclid=IwAR2oo6_yuTfc00uBna-vX7M1uEFgsBGTLrROwmwRH1RFX4m9abgXl6xH2k [6] https://text.relipasoft.com/2017/05/co-ban-ve-rest-va-restfulapi/?fbclid=IwAR2Y8Ta9N8a07c4HZf6Ngm1tahbSceYyQ0QoMZyQre_DrxIJZnJ1GYejIGs [7] https://viblo.asia/p/tan-man-ve-api-designp1PvQ3lyMldr?fbclid=IwAR3lz0WJkgq8kJsbH1jDTLTbt7rU932ch932Nh8I6PAFZcg2PU9DWlmH EpY [8] https://www.baeldung.com/securityspring?fbclid=IwAR1uO2n1rMnuSylUqVP3bfQXO0U9Lbce_mqZ_jV1-ja4_33gOKUJbRqBfYA [9] https://www.concretepage.com/spring-4/spring-4-mvc-jsonp-example-with-rest-responsebodyresponseentity?fbclid=IwAR2WsWc932qYl1xTMoRzZa5LDXSgDG6eOhawP3GRn0COl9yf0d54IY 09wOo 118 an an ... đề tài: Tìm hiểu Spring Restful API xây dựng website bán sách online Giáo viên hướng dẫn: ThS Nguyễn Minh Đạo Nội dung thực hiện: Lý thuyết: - Tìm hiểu Spring Framework: Spring MVC, Spring Security... Spring Security 16 an + Tìm hiểu nội dung, kiến thức tiêu chuẩn Restful API + Sau tất kiến thức tìm hiểu trên, nhóm xây dựng website bán sách online dựa Spring RestFul API Phân tích cơng trình... kiến thức liên quan để xây dựng website bán sách online Cách tiếp cận phương pháp nghiên cứu - Đối tượng nghiên cứu + Spring Restful API: Spring MVC, Spring Security, Restful API + Database: MySQL