Luận văn Xây dựng một hệ thống tự động kiểm tra vào khách sạn dựa trên dịch vụ dựa vào vị trí

Apache Tomcat (hay viết tắt Tomcat,trước đây còn gọi là Jakarta Tomcat) là một Web Server đồng thời là Servlet Container mã nguồn mở được phát triển bởi Apache Software Foundation (ASF).Tomcat hiện thực Java Servlet và Java ServerPages (JSP) chi tiết kĩ thuật từ công ty Oracle ,và cung cấp một môi trường web giao thức HTTP trên “Java thuần khiết” để chạy mã Java.Có một điều cần chú ý là không nên nhầm lẫn Tomcat với Apache web server,là một web server giao thức HTTP được hiện thực bằng ngôn ngữ C;2 web servers không đi kèm với nhau ,mặc dù chúng thường xuyên được sử dụng đồng thời như một phần của web application stack.Apache Tomcat có bao gồm các công cụ cho việc cấu hình và quản lý,nhưng cũng có thể làm điều đó bằng cách chỉnh sửa các tập tin XML.

pdf51 trang | Chia sẻ: lvbuiluyen | Lượt xem: 2251 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Luận văn Xây dựng một hệ thống tự động kiểm tra vào khách sạn dựa trên dịch vụ dựa vào vị trí, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Luận văn Xây dựng một hệ thống tự động kiểm tra vào khách sạn dựa trên dịch vụ dựa vào vị trí. Contents 1. CHƯƠNG 1:TỔNG QUAN VỀ ĐỀ TÀI ............................................................................................. 20 1.1. Giới thiệu đề tài .............................................................................................................................. 21 Xã hội càng phát triển con người càng phải lao động sáng tạo nhiều hơn, do đó nhu cầu về vui chơi giải trí thư giãn cũng tăng. Ngành du lịch mà trong đó là lĩnh vực khách sạn được mọi người quan tâm đầu tư hàng đầu. Trong một xã hội năng động và hối hả, mọi người đều muốn tiết kiệm thời gian và công sức trong việc đặt phòng và nhận phòng khách sạn khi họ đi du lịch. Vì vậy vấn đề được đặt ra là làm sao khách du lịch có thể tiết kiệm được tối đa thời gian để tiến hành các thủ tục đặt và nhận phòng khách sạn........................................................................................................................................................ 21 Tuy nhiên cùng với sự phát triển mạnh mẽ của công nghệ và Internet, chúng ta đã dần tìm ra được giải pháp để giải quyết vấn đề trên. Bắt đầu từ hệ thống kiểm tra vé máy bay trước khi lên máy bay, chúng ta đã có thể xây dựng một hệ thống kiểm tra trước khi nhận phòng cho khách sạn dựa trên dịch vụ dựa vào vị trí. ........................................................................................................................................................ 21 Hệ thống có thể cho phép người sử dụng tiến hành tự động kiểm tra khi vào khách sạn ở trong phạm vi khoảng cách do khách sạn qui định. Đối với khách sạn, họ có thể giảm thiểu tối đa thao tác của con người nhưng vẫn đảm bảo được các qui trình nghiệp vụ cần thiết của khách sạn. ................................... 21 Tuy nhiên, hệ thống này vẫn là một khái niệm mới đối với khách sạn cũng như khách du lịch nên vẫn còn nhiều bất cập chưa đáp ứng nhu cầu thực tế. Vì vậy. nhóm thực hiện đề tài này sau khi đã tìm hiểu và nghiên cứu các nghiệp vụ khách sạn cũng như những hệ thống kiểm tra hiện có để xây dựng nên hệ thống này........................................................................................................................................................ 21 1.2. Nội dung đề tài ................................................................................................................................ 21 Nội dung của đề tài đó là xây dựng một hệ thống tự động kiểm tra vào khách sạn dựa trên dịch vụ dựa vào vị trí. Chức năng chính của hệ thống cho phép người đặt phòng sử dụng điện thoại di động mà đã đăng ký đặt phòng tại khách sạn được kiểm tra vào một cách tự động khi người sử dụng đi vào phạm vi bán kính thỏa mãn điều kiện của khách sạn đặt ra. Lúc đó hệ thống sẽ tiến hành việc xác thực danh tính người đặt phòng và thông tin tới khách sạn quá trình thành công. Sau đó, khách sạn sẽ xác nhận với người đặt phòng. ............................................................................................................................................ 21 Hệ thống được nhóm hiện thực bảo đảm các yêu cầu sau: ......................................................................... 21  Tuân thủ đúng các nghiệp vụ khách sạn đã nghiên cứu. .................................................................... 21  Thiết kế hệ thống gồm các Web Service được tích hợp lại với nhau. ............................................... 21 Phần tiếp theo bao gồm các nội dung: ......................................................................................................... 22  Chương 2: Trình bày các kiến thức về nghiệp vụ khách sạn một cách cơ bản nhất. Ngoài ra, nhóm còn trình bày các kiến thức về công nghệ và kỹ thuật như Web service, framework đa nền tảng để lập trình mobile (PhoneGap), hệ cơ sở dữ liệu PostGreSql dùng để lưu trữ dữ liệu vị trí. ............................ 22  Chương 3: Gồm việc phân tích và thiết kế các yêu cầu nghiệp vụ, trình tự quá trình thực hiện chức năng của hệ thống và các lược đồ như lược đồ usecase, lược đồ tuần tự và sơ đồ ERD về cơ sở dữ liệu. 22  Chương 4: Đề xuất mô hình kiến trúc tổng quan và các chức năng cần thiết cho hệ thống, hiện thực từng chức năng theo mô hình đã đề ra. ................................................................................................ 22  Chương 5: tổng kết toàn bộ quá trình xây dựng hệ thống, báo cáo các ưu nhược điểm của hệ thống và hướng phát triển hệ thống để tối ưu hiệu suất. Đồng thời cũng trình bày hướng xây dựng thành luận văn tốt nghiệp sau này................................................................................................................................... 22 2. CHƯƠNG 2:CÁC KIẾN THỨC NỀN TẢNG ĐỂ XÂY DỰNG HỆ THỐNG ............................. 22 2.1. Các nghiệp vụ cơ bản của hệ thống ............................................................................................. 22 2.1.1. Một số thuật ngữ ..................................................................................................................... 22 2.1.2. Quy trình đăng ký của Hotel ................................................................................................ 22 Hình 1.1 Quy trình đăng ký từ hotel ........................................................................................................ 24 2.1.3. Quy trình đăng ký và thiết lập của Client .......................................................................... 24 Hình 2 Quy trình đăng ký và thiết lập của client .................................................................................... 26 2.1.4. Cách hoạt động của hệ thống................................................................................................ 26 2.2. Những công nghệ phục vụ cho chương trình ............................................................................. 27 2.2.1. Apache Tomcat 6.0 ................................................................................................................. 27  Giới thiệu[1] ....................................................................................................................................... 27 Apache Tomcat (hay viết tắt Tomcat,trước đây còn gọi là Jakarta Tomcat) là một Web Server đồng thời là Servlet Container mã nguồn mở được phát triển bởi Apache Software Foundation (ASF).Tomcat hiện thực Java Servlet và Java ServerPages (JSP) chi tiết kĩ thuật từ công ty Oracle ,và cung cấp một môi trường web giao thức HTTP trên “Java thuần khiết” để chạy mã Java.Có một điều cần chú ý là không nên nhầm lẫn Tomcat với Apache web server,là một web server giao thức HTTP được hiện thực bằng ngôn ngữ C;2 web servers không đi kèm với nhau ,mặc dù chúng thường xuyên được sử dụng đồng thời như một phần của web application stack.Apache Tomcat có bao gồm các công cụ cho việc cấu hình và quản lý,nhưng cũng có thể làm điều đó bằng cách chỉnh sửa các tập tin XML. .................................................................................................................................................... 27  Thành phần ...................................................................................................................................... 27 Tomcat 6.0 hiện thực Servlet 2.5 và JSP 2.1 được đặc tả từ Java Community Proccess bao gồm:[2] . 27 o Catalina:Là serverlet container của Tomcat.Catalina hiện thực theo đặc tả server và JSP của Sun Microsystem.Trong Tomcat,1 nhân tố Realm đại diện cho 1 cơ sở dữ liệu gồm các usernames ,passwords và roles (giống như Unix Group) được gán cho các users.Các hiện thực khác nhau của Realm cho phép Catalina tích hợp vào những môi trường mà việc xác thực thông tin được tạo ra và bảo trì,và sau đó sử dụng thông tin này để hiện thực Container Manager Security được đặc tả trong phần Servlet Specification ........................................................................................................................ 27 o Coyote:Là thành phần kết nối HTTP của Tomcat hỗ trợ giao thức HTTP 1.1 cho web server và application container.Coyote lắng nghe những kết nối đang gửi tới trên một cổng TCP chuyên biệt của web server và chuyển các yêu cầu cho Tomcat Engine để xử lý và trả kết quả về cho client. ..... 28 o Jasper:Là JSP Engine của Tomcat.Jasper duyệt các file JSP để biên dịch sang code Java như servlet (các file này được xử lý bởi Catalina).Trong môi trường runtime,Jasper phát hiện những thay đổi của các file JSP và biên dịch chúng lại nhiều lần nữa.Tomcat 6.0 sử dụng Jasper 2,được hiện thực theo đặc tả JSP 2.0 của Sun Microsytem ........................................................................................ 28 2.2.2. Apache Axix 2.2 ...................................................................................................................... 28  Giới thiệu .......................................................................................................................................... 28 Apache Axix 2.2 là một Webservice Framework mã nguồn mở sử dụng XML.Nó bao gồm các hiện thực Java và C++ của SOAP server,chứa nhiều tính năng và APIs để tạo và cung cấp các ứng dụng Web Service.Sử dụng Apache Axis,nhà phát triển có thể tạo ra các ứng dụng phân tán tương thích với nhiều máy tính khác nhau.Axis được phát triển dưới sự bảo trợ của Apache Software Foundation .................................................................................................................................................................... 28  Axis trong Java ................................................................................................................................ 28 Khi sử dụng phiên bản Java của Axis ,có 2 cách để tiếp xúc với mã Java như một Web Service.Cách dễ nhất là dùng tập tin Axis Native JWS (Java Web Service).Một cách khác là sử dụng các phiên bản tùy chỉnh.Cách thứ 2 cho phép bạn tùy chỉnh các tài nguyên được sử dụng như Web Service. ......... 28  JWS ................................................................................................................................................... 28 Tập tin JWS bao gồm mã nguồn của các class Java được viết để tiếp cận web service.Khác biệt chính giữa tập tin java và jws là phần đuôi tập tin.Một sự khác nhau nữa là tập tin jws được triển khai như một mã nguồn chứ không biên dịch như class file. ................................................................. 28 2.2.3. PhoneGap 1.7.0 ....................................................................................................................... 29  Giới thiệu: ........................................................................................................................................ 29 Phonegap (còn gọi là Apache Callback,nhưng bây giờ được gọi là Apache Cordova)là một framework mã nguồn mở được phát triển dành cho điện thoại di động sản xuât bởi Nitobi,và được mua lại bởi Adobe System.Nó cho phép lập trình viên xây dựng ứng dụng cho điện thoại di động bằng cách dùng Javascript,HTML5 và CSS3 thay vì sử dụng các ngôn ngữ cấp thấp như Objective- C.Các ứng dụng tạo ra là ứng dụng hybrid,tức là chúng không dành riêng cho bất kì loại điện thoại hay hệ điều hành nào (tất cả các layout được bố trí và hiện thực thông qua web view thay vì một UI Framework tĩnh của một platform nào đó) nó cũng không hoàn toàn dựa trên web (không chỉ là ứng dụng web ,nó có thể được đóng gói để phân phối trên AppStore, và có thể truy xuất đến phần giao diện lập trình ứng dụng của thiết bị) ........................................................................................................ 29  Danh sách các OS được hỗ trợ bởi PhoneGap ........................................................................... 29 2.2.4. Google API............................................................................................................................... 29 2.2.5. PostgreSQL 9.1 PostgreSQL ,còn được gọi đơn giản là Postgres,là một hệ quản trị cơ sở dữ liệu mô hình hướng đối tượng (ORDBMS) có thể sử dụng trên nhiều platform bao gồm Linux,FreeBSD,Solaris,Microsoft Window và Mac OS X.Được phát hành dưới giất phép của PostgreSQL,là giấy phép MIT-Style,tức là hoàn toàn miễn phí và là mã nguồn mở.PostgreSQL được phát triển bởi PostgreSQL Global Development Group, bao gồm những tình nguyện viên làm trợ thủ đắc lực và được giám sát bởi các công ty như Red Hat và EnterpriseDB.Nó hiện thực phần lớn dựa trên tiêu chuẩn của SQL 2008,tuân thủ theo ACID,và hoàn toàn trong suốt (bao gồm các câu lệnh DDL) chứa các kiểu dữ liệu ,toán tử ,phương pháp đánh chỉ mục,hàm,ngôn ngữ thủ tục mở rộng và một số lượng rất lớn các mở rộng được viết bởi third party. ................................................................. 29 Đa số các bản Linux đều có PostgreSQL sẵn trong các gói cung cấp được phân phối,bắt đầu từ Lion,sử dụng PostgreSQL server như là một tiêu chuẩn cho cơ sở dữ liệu mặc định của nó trong các phiên bản server,và kèm các công cụ PostgreSQL client cho các phiên bản desktop. ......................... 30 3. CHƯƠNG 3:PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG ................................................................. 30 3.1. Phân tích các yêu cầu bên phía user ............................................................................................ 30 3.1.1. Đăng ký tài khoản................................................................................................................... 30 - Mô tả: người dùng tải ứng dụng về và phải đăng ký tài khoản để sử dụng hệ thống. .................. 30 - Qui trình: ........................................................................................................................................... 30 o Người dùng có thể đăng ký trên website của ứng dụng ................................................................. 30 o Hệ thống sẽ hiện thị một bảng nhập dữ liệu gồm: .......................................................................... 30  Title .................................................................................................................................................... 30  First name .......................................................................................................................................... 30  Last name .......................................................................................................................................... 30  Email .................................................................................................................................................. 30  Mobile number .................................................................................................................................. 30  Address .............................................................................................................................................. 30  Credit card type ................................................................................................................................. 30  Credit card number ........................................................................................................................... 30 - Điều kiện: tài khoản do người dùng tạo chưa được tạo ra trước đó. ............................................. 30 - Kết quả: hệ thống sẽ xuất thông báo đăng ký tài khoản thành công. ............................................ 30 3.1.2. Đăng nhập vào hệ thống ........................................................................................................ 30 - Mô tả: người dùng muốn đăng nhập vào hệ thống để tiến hành việc kiểm tra vào khách sạn, thay đổi thông tin cá nhân. ....................................................................................................................... 30 - Qui trình: ........................................................................................................................................... 30 o Tại giao diện chính của ứng dụng nhập Username và Password................................................... 30 o Nhấp chuột vào nút Submit. ............................................................................................................. 31 - Điều kiện: người dùng chưa đăng nhập vào hệ thống và nhập đúng Username và Password. .... 31 - Kết quả: nếu đăng nhập thành công thì ứng dụng sẽ tự động tiến hành qui trình kiểm tra, ngược lại sẽ thông báo lỗi và hiện lại trang đăng nhập cho người dùng. .......................................................... 31 3.1.3. Đăng xuất khỏi hệ thống........................................................................................................ 31 - Mô tả: người dùng muốn đăng xuất khỏi hệ thống......................................................................... 31 - Qui trình: ở màn hình chờ của ứng dụng, người dùng nhấp chuột vào nút Đăng xuất. ............... 31 - Điều kiện: người dùng đang ở trạng thái đăng nhập hệ thống. ...................................................... 31 - Kết quả: hệ thống quay về giao diện chính của ứng dụng. ............................................................ 31 3.1.4. Kiểm tra thông tin .................................................................................................................. 31 - Mô tả: người dùng muốn xem thông tin cá nhân như First name, Last name, Email, Mobile number …. ................................................................................................................................................. 31 - Qui trình: ........................................................................................................................................... 31 o Người dùng đăng nhập vào hệ thống với Username và Password. ............................................... 31 o Nhấp chuột vào Thông tin cá nhân. ................................................................................................. 31 - Điều kiện: người dùng đăng nhập vào hệ thống thành công. ......................................................... 31 - Kết quả: hệ thống sẽ hiển thị bảng thông tin của người dùng........................................................ 31 3.2. Phân tích các yêu cầu từ hotel .................................................................................................. 31 3.2.1. Đăng ký tài khoản................................................................................................................... 31 - Mô tả: khách sạn tải ứng dụng và đăng ký tài khoản. .................................................................... 31 - Qui trình: ........................................................................................................................................... 31 o Khách sạn có thể vào website ứng dụng để tiến hành đăng ký dành cho khách sạn. ................... 31 o Hệ thống sẽ hiển thị bảng nhập dữ liệu dành cho khách sạn gồm: ................................................ 31  Tên khách sạn.................................................................................................................................... 31  Email .................................................................................................................................................. 31  Address .............................................................................................................................................. 31  Phone number ................................................................................................................................... 31 - Điều kiện: tài khoản kh