Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 35 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
35
Dung lượng
2,48 MB
Nội dung
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT - HÀN INCLUDEPICTURE "https://lh3.googleusercontent.com/proxy/kc1myQYhk4BBIpluNgyAQcwbk36Pc8H6fYPxDLDoOaGaQ5BFkZuUv026S1 qE0onBYLPcZV5bMtBpF9CsmQ" \* MERGEFORMATINET ĐỒ ÁN CHUYÊN NGÀNH ĐỀ TÀI: WEB+APP TÌM KIẾM ĐỊA ĐIỂM DU LỊCH Sinh viên thực : TRẦN LÊ BẢO KHANH ĐẶNG PHƯƠNG BẢO Giảng viên hướng dẫn : Ths NGUYỄN HÙNG CƯỜNG Lớp : 17IT3 Đà nẵng, tháng 12 năm 2020 ĐẠI HỌC ĐÀ NẴNG KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG INCLUDEPICTURE "https://lh3.googleusercontent.com/proxy/kc1myQYhk4BBIpluNgyAQcwbk36Pc8H6fYPxDLDoOaGaQ5BFkZuUv026S1qE 0onBYLPcZV5bMtBpF9CsmQ" \* MERGEFORMATINET ĐỒ ÁN CHUYÊN NGÀNH WEB + APP TÌM KIẾM ĐỊA ĐIỂM DU LỊCH Đà Nẵng, tháng 12 năm 2020 LỜI MỞ ĐẦU Em xin gửi lời cảm ơn đến với thầy cô khoa Công Nghệ Thông Tin Truyền Thông tạo điều kiện cho chúng em thực đồ án chuyên ngành Và em chân thành cảm ơn Thầy Nguyễn Hùng Cường nhiệt tình hướng dẫn em hồn thành đồ án sở Trong q trình làm báo cáo đồ án khó tránh khỏi sai sót mong thầy, bỏ qua Đồng thời trình độ lý luận kinh nghiệm cịn hạn chế nên mong nhận ý kiến đóng góp thầy, để từ rút kinh nghiệm hoàn thành tốt đồ án Em xin chân thành cảm ơn! Sinh viên thực Trần Lê Bảo Khanh: 17IT3 Đặng Phương Bảo: 17IT3 NHẬN XÉT (Của giảng viên hướng dẫn) …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… NHẬN XÉT …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… MỤC LỤC Trang MỞ ĐẦU Chương GIỚI THIỆU 1.1 Lý chọn đề tài 1.2 Mục tiêu, kỹ thuật thực 1.2.1 Mục tiêu 1.2.2 Kỹ thuật thực 1.2.3 Nội dung nghiên cứu .9 Chương NGHIÊN CỨU TỔNG QUAN 10 2.1 Địa điểm du lịch 10 2.1.1 Địa điểm du lịch .10 2.1.2 Các yếu tô cấu thành địa điểm du lịch 10 2.2 Ứng dụng liên quan đến du lịch 12 2.2.1 Traveloka .12 2.2.2 Couchsurfing 13 2.2.3 Booking.com 14 2.2.4 Airbnb 14 2.2.5 Mtrip 15 2.3 Tìm hiểu mơ hình MVC .15 2.3.1 Mơ hình MVC gì? 15 2.3.2 Ưu & nhược điểm MVC 17 2.4 Tìm hiểu API 18 2.4.1 API gì? .18 2.4.2 API thường ứng dụng vào đâu? .18 2.4.3 Web API gì? .18 2.4.4 Ưu nhược điểm Web API 19 2.5 Tìm hiểu Hibernate Framework .20 2.5.1 Hibernate Framewwork gì? 20 2.5.2 Lợi ích Hibernate Framework 20 2.6 Tìm hiểu Spring .21 2.6.1 Spring gì? 21 2.6.2 Lợi ích việc sử dụng Spring Framework 22 Chương PHÂN TÍCH THIẾT KẾ HỆ THỐNG 23 3.1 Các chức người dùng 23 3.1.1 Khách(Guest) 23 3.1.2 Thành viên (User) 23 3.1.3 Biểu đồ UseCase 24 3.2 Các chức Admin 24 3.2.1 Admin quản lý .24 3.2.2 Admin hệ thống .25 3.2.3 Biểu đồ UseCase 25 3.3 Biểu đồ lớp 26 Chương KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 27 DANH MỤC HÌNH Hình Traveloka 12 Hình Couchsurfing 13 Hình Booking.com 14 Hình Airbnb 14 Hình Mtrip .15 Hình Mơ hình MVC thành phần bên MVC 16 Hình Luồng tương tác thành phần MVC 16 Hình Web API 18 Hình Hibernate 20 Hình 10 Vị trí ORM project Java 20 Hình 11 Spring Framework .21 Hình 12 Biểu đồ UseCase người dùng .24 Hình 13 Biểu đồ lớp Admin .25 Hình 14 Biểu đồ lớp 26 Hình 15 Trang chủ 27 Hình 16 Trang Đăng nhập 28 Hình 17 Trang đăng ký .28 Hình 18 Trang kết tìm kiếm .28 Hình 19 Trang thơng tin địa điểm .29 Hình 20 Giao diện Admin 29 Hình 21 Chỉnh sửa thơng tin admin 30 Hình 22 Thêm địa điểm 30 Hình 23 Thêm dịch vụ 31 Hình 24 Danh sách phản hồi .31 Hình 25 Danh sách người khách hàng 32 Hình 26 Danh sách admin 32 Hình 27 Danh sách địa điểm .33 Chương GIỚI THIỆU 1.1 Lý chọn đề tài Xã hội ngày phát triển nhu cầu vui chơi giải trí người nâng cao, địa điểm nghỉ ngơi, vui chơi giải trí ngày thu hút nhiều du khách Tuy nhiên tổ chức, công ty du lịch chưa đáp ứng yêu cầu khám phá du khách Cho dù Internet phát triển, website hay ứng dụng điện thoại du lịch nhiều chủ yếu đưa tour du lịch cho phép người dùng đặt tour Các tổ chức, cơng ty du lịch thực quan tâm đến lợi nhuận chưa thực nghĩ đến người dùng họ cần chuyến du lịch Chính vậy, nhóm em định chọn đề tài tìm kiếm địa điểm du lịch Với mục đính giúp du khách tự khám phá địa điểm lạ địa phương nước song song với việc tìm kiếm địa điểm thích hợp cho đối tượng, nhóm em cịn muốn du khách tự chủ cách cung cấp dịch vụ khác như: thuê nhà, thuê xe, dụng cụ bảo hộ, Bên cạnh đó, với đồ án nhóm e có hội để áp dụng số kiến thức API, mơ hình MVC, Spring framework, Thymeleaf, Hibernate 1.2 Mục tiêu, kỹ thuật thực 1.2.1 Mục tiêu - Xây dựng web app android hỗ trợ tìm kiếm địa điểm du lịch Sử dụng API để tạo chương trình đa tảng quán sở liệu - Hệ thống tìm kiếm địa điểm du lịch hồn thành đáp ứng chức tối thiểu như: Tìm kiếm địa điểm theo nhu cầu như: địa điểm, mục đích, số lượng Gợi ý dịch vụ kèm như: thuê nhà thuê xe, đặt xe,… Các chức cở như: Đăng nhập, đăng ký, đăng xuất, đặt dịch vụ, huỷ dịch vụ, xem địa điểm,… 1.2.2 Kỹ thuật thực - Website sử dụng mơ hình MVC - Sử dụng API cho toàn hệ thống - Sử dụng Hibernate để tạo liệu, thao tác liệu truy cập liệu - Sử dụng Thymeleaf để thay cho JSP tầng View (View Layer) ứng dụng Web MVC - Sử dụng MySQL làm hệ thống quản trị sở liệu - Thiết kế website công nghệ như: Html, Boostrap, Css, Javascript, ajax - Framework back-end: Spring framework - Ngôn ngữ lập trình: java - IDE lập trình: Eclipse Android Studio - Các công cụ hỗ trợ: MySQL Workbench 8.0 CE 1.2.3 Nội dung nghiên cứu Khảo sát thực tế địa điểm cụ thể Khảo sát đơn vị cung cấp dịch vụ địa điểm cụ thể Phân tích thiết kế hệ thống Xây dựng sở liệu Xây dựng giao diện chức Xây dựng API cho hệ thống Kiểm nghiệm toàn hệ thống Viết báo cáo 2.5 Tìm hiểu Hibernate Framework Hình Hibernate 2.5.1 Hibernate Framewwork gì? Hibernate framework giải pháp ORM (Object Relational Mapping) mã nguồn mở, gọn nhẹ Hibernate giúp đơn giản hoá phát triển ứng dụng java để tương tác với sở liệu Tool ORM giúp đơn giản hoá việc tạo liệu, thao tác liệu truy cập liệu Đó kỹ thuật lập trình để ánh xạ đối tượng vào liệu lưu trữ sở liệu Hình 10 Vị trí ORM project Java 2.5.2 Lợi ích Hibernate Framework Mã nguồn mở nhẹ: Hibernate Framework mã nguồn mở có giấy phép LGPL nhẹ Hiệu suất nhanh: Hiệu suất Hibernate Framework nhanh nhớ cache sử dụng nội Hibernate Framework Có hai loại nhớ cache Hibernate Framework, gồm nhớ cache cấp nhớ cache cấp hai Bộ nhớ cache cấp bật lệnh mặc định Truy vấn sở liệu độc lập: HQL (Hibernate Query Language) phiên hướng đối tượng SQL Nó tạo truy vấn sở liệu độc lập Vì vậy, bạn không cần phải viết truy vấn sở liệu cụ thể Trước Hibernate, dự án có sở liệu bị thay đổi, cần phải thay đổi truy vấn SQL dẫn đến cố bảo trì Tạo bảng tự động: Hibernate framework cung cấp phương tiện để tạo bảng sở liệu tự động Vì vậy, khơng cần phải tạo bảng sở liệu tay Đơn giản lệnh join phức tạp: Có thể lấy liệu từ nhiều bảng cách dễ dàng với Hibernate framework Cung cấp thống kê truy vấn trạng thái sở liệu: Hibernate hỗ trợ nhớ cache truy vấn cung cấp số liệu thống kê truy vấn trạng thái sở liệu 2.6 Tìm hiểu Spring Framework Hình 11 Spring Framework 2.6.1 Spring framwork gì? Spring framework Java Platform mã nguồn mở, giải pháp gọn nhẹ dành cho Java Enterprise Với Spring Framework nhà phát triển tạo mã có hiệu suất cao, dễ kiểm thử sử dụng lại Các tính core Spring Framework sử dụng việc phát triển ứng dụng Java Bên cạnh đó, phần mở rộng sử dụng để xây dựng ứng dụng web tảng Java EE Mục tiêu Spring Framework làm cho việc phát triển ứng dụng J2EE dễ dàng thúc đẩy việc lập trình tốt mơ hình POJO-based 2.6.2 Lợi ích việc sử dụng Spring Framework Spring cho phép nhà phát triển tạo ứng dụng cấp Enterprise sử dụng POJO Lợi ích việc sử dụng POJO bạn không cần sản phẩm chứa EJB máy chủ ứng dụng, mà bạn sử dụng chứa servlet mạnh mẽ Tomcat số sản phẩm thương mại khác Spring tổ chức theo kiểu mô đun Mặc dù số lượng gói lớp nhiều, bạn cần quan tâm đến bạn cần khơng cần quan tâm đến phần cịn lại Spring sử dụng số cơng nghệ có số ORM Framework, logging frameworks, JEE, Quartz, JDK timers công nghệ View khác Dễ dàng để kiểm thử chương trình viết Spring Web framework Spring Web MVC framework có thiết kế tốt, thay tuyệt vời cho Struts công nghệ phổ biến khác Spring cung cấp API thuận tiện để dịch ngoại lệ công nghệ cụ thể (ném JDBC, Hibernate, JDO chẳng hạn) vào trường hợp ngoại lệ qn, khơng kiểm sốt IoC Container có trọng lượng nhẹ Điều có lợi cho việc phát triển triển khai ứng dụng máy tính có nhớ tài ngun CPU hạn chế Spring cung cấp giao diện quản lý transaction quán mở rộng đến local transaction (ví dụ sử dụng sở liệu) mở rộng lên global transaction (sử dụng JTA) Chương PHÂN TÍCH THIẾT KẾ HỆ THỐNG 3.1 Các chức người dùng 3.1.1 Khách(Guest) Tìm kiếm địa điểm du lịch dựa vào địa điểm, mục đích, số lượng người dùng Xem thơng tin địa điểm du lịch Xem dịch vụ địa điểm du lịch Đăng ký tài khoản thành viên 3.1.2 Thành viên (User) Đăng nhập vào hệ thống Quản lý dịch vụ Đặt dịch vụ Huỷ dịch vụ Quản lý thông tin cá nhân Xem thông tin cá nhân Chỉnh sửa thơng tin cá nhân Quản lý u thích địa điểm Thêm u thích Xố u thích Phản hồi admin Bình luận địa điểm du lịch 3.1.3 Biểu đồ UseCase Hình 12 Biểu đồ UseCase người dùng 3.2 Các chức Admin 3.2.1 Admin quản lý Đăng nhập hệ thống Quản lý địa điểm Thêm địa điểm Sửa địa điểm Xoá địa điểm Quản lý dịch vụ Thêm dịch vụ Xoá dịch vụ Sửa dịch vụ Quản lý phản hồi Xem phản hồi Trả lời phản hồi 3.2.2 Admin hệ thống Cấp quyền admin Chỉnh sửa hệ thống Cùng chức admin quản lý 3.2.3 Biểu đồ UseCase Hình 13 Biểu đồ lớp Admin 3.3 Biểu đồ lớp Hình 14 Biểu đồ lớp Chương KẾT QUẢ THỰC HIỆN 4.1 Giao diện người dùng 4.1.1 Trang chủ Thanh navigation có chứa mục như: Help, Contract, Login Kế đến logo input để nhập thơng tin cần tìm kiếm button tìm kiếm Ở mục Địa Chỉ ta dùng để nhập tỉnh thành, ví dụ như: Đà nẵng, Quảng Nam, Nha Trang, Đăk Lăk,… Ở mục Mục đích ta dùng để nhập mục đích du lịch, ví dụ như: du lịch, tham quan, chụp ảnh, dã ngoại, dạo bộ, … Ở mục số lượng ta dùng để nhập số lượng người tham gia Tiếp theo thông tin trang web Cuối footer gồm thơng tin liên lạc Hình 15 Trang chủ 4.1.2 Trang đăng nhập đăng ký Khi click vào login điều hướng trang chủ dẫn đến trang đăng nhập Ở trang đăng nhập gồm mục email, mật button đăng nhập Nếu chưa có tài khoản ta click vào dịng chưa có tài khoản? Ở trang đăng ký, gồm input như: Họ tên, email, mật khẩu, nhập lại mật button đăng ký Hình 16 Trang Đăng nhập Hình 17 Trang đăng ký 4.1.3 Trang tìm kiếm Trang hiển thị điều hướng, tìm kiếm, cuối phần chứa kết tìm kiếm Hình 18 Trang kết tìm kiếm 4.1.4 Trang thơng tin địa điểm Trang thông tin gồm title, nội dung chi tiết địa điểm, hình ảnh, dịch vụ nhận xét đánh giá Hình 19 Trang thơng tin địa điểm 4.2 Giao diện Admin Hình 20 Giao diện Admin 4.2.1 Chỉnh sửa admin Gồm input email, username, password dung để thay đổi thơng tin đăng nhập admin Hình 21 Chỉnh sửa thông tin admin 4.2.2 Thêm địa điểm Gồm input để nhập thơng tin địa điểm Hình 22 Thêm địa điểm 4.2.3 Thêm dịch vụ Gồm input để thêm dịch vụ Hình 23 Thêm dịch vụ 4.2.4 Danh sách phản hồi Gồm danh sách phản hồi từ người dùng Hình 24 Danh sách phản hồi 4.2.5 Danh sách người khách hàng Hình 25 Danh sách người khách hàng 4.2.6 Danh sách admin Hình 26 Danh sách admin 4.2.7 Danh sách địa điểm Hình 27 Danh sách địa điểm Chương KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN