1. Kết quả:
Chương trinh đã hoàn thiện được các chức năng chính như: nhập, sửa, xoá khách, lập hoá đơn khách, tính tiền thuê phòng, tiền sử dụng dịch vụ của khách. Nhưng trong quá trình thực hiện chương trình nhóm còn gặp một số khó khăn và hạn chế sau:
• Với thời gian có hạn, nhóm không thể khảo sát hết những tính năng cụ thể của từng công nghệ.
• Các công nghệ mà Java cung cấp tuy mạnh, hiệu quả nhưng còn khá mới mẻ.
• Trong quá trình viết code cho trương trình nhóm gặp khó khăn khi tính tiền của khách nguyên nhân là nhóm không tìm được các hàm sử lý ngày tháng trong java.
• Chương trình chưa có nhiều thờI gian dể thử nghiệm nên chưa thể chắc chắn về tính ổn định. rất có thể là một số phần còn chưa logic và chưa thật sự chính xác.
• Chương trình còn gặp khó khăn khi nhúng phông chữ tiếng việt.
2. Hướng phát triển :
Từ những hạn chế nêu trên, nhóm thực hiện đề ra những hướng phát triển trong tương lai như sau:
• Chương trình sê nâng cao giao diện và phát triển các tính năng khác
• Phiên bản tiếp theo sẽ hỗ trợ nhiều ngôn ngữ hơn.
54 trang |
Chia sẻ: oanh_nt | Lượt xem: 1609 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Đồ án Thiết kế trang Web khách sạn Mường Thanh, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
một số phòng cụ thể và chịu trách nhiệm quản lý toàn bộ trang thiết bị và cơ sở vật chất đầu tư trang bị cho từng phòng khách (theo danh mục tài sản tại phòng). Thường xuyên kiểm tra giám sát nếu hư hỏng mất mát phải làm rõ lý do và đề nghị xử lý. Nếu khách làm hư hỏng, mất hoặc sử dụng đồ uống trong phòng, nhân viên phòng phải báo cáo cho lễ tân thanh toán với khách. Nếu không báo cáo hoặc báo cáo không đầy đủ hoặc lỗi do nhân viên phòng làm hư hỏng, mất thì nhân viên phải bồi thường. Thường xuyên sắp xếp, lau chùi, quét dọn và làm vệ sinh sạch sẽ phòng nghỉ, phòng vệ sinh của khách, giặt ga, gối, khăn và đồ của khách. Đồng thời bổ sung kịp thời trang bị phòng khách (ga, gối, khăn, xà phòng, bàn chải, thuốc đánh răng…). Khi thiếu một trong những đồ dùng nhân viên nhà phòng lên kho lấy và ký nhận lại.
Phối hợp với lễ tân nhận khách, dẫn khách và bố trí phòng nghỉ cho khách, làm một số thủ tục ban đầu những trang thiết bị cần thiết (bật điều hòa, bình nóng lạnh, xử lý tủ nước…) và hướng dẫn khách, chúc khách nghỉ thoải mái. Không để người không phải là khách nghỉ tại phòng đó tự tiện vào phòng. Khi khách đã đi ra khỏi phòng, nếu cần phải có giấy ủy nhiệm của khách và khi đó nhân viên nhà phòng phải dẫn khách vào và ra. Nhân viên nhà phòng phải phân công trực ca ban ngày và ban đêm để quán xuyến chung và bố trí khách nghỉ cũng như nhận phòng khi khách đi. Sau khi khách ra khỏi phòng, nhân viên phải kiểm tra và tắt các thiết bị sử dụng điện đảm bảo an toàn.
4. Quản lý nhà hàng
Nhà hàng khách sạn là một bộ phận quan trọng gắn liền với hoạt động nghỉ ngơi và các dịch vụ của khách sạn, gồm các bộ phận Bar, bàn , bếp, mỗi bộ phận có một tổ trưởng phụ trách điều hành công việc trong bộ phận. Nhà hàng có chủ nhiệm là người chịu trách nhiệm trước Giám đốc về hoạt động kinh doanh, phục vụ khách và hạch toán kinh tế. Có kế hoạch và biện pháp tuyên truyền, quảng bá nhằm thu hút khách. Có trách nhiệm quản lý, sử dụng toàn bộ trang thiết bị các phòng của Nhà hàng, các dụng cụ phục vụ cho chế biến, ăn uống và hàng hóa của Nhà hàng. Công việc trong nhà hàng hoàn toàn làm thủ công do các nhân viên chưa có sự ứng dụng tin học trong quản lý nên dễ gây nhầm lẫn.
Hàng ngày phải lên danh sách các món ăn hoặc hội nghị, sinh nhật, đám cưới do khách đặt qua danh sách bên lễ tân điều hành. Đảm bảo các hoạt động phối hợp nhịp nhàng, đồng bộ, ăn khớp từ khâu tiếp nhận khách và hàng do khách đặt từ bộ phận lễ tân bên điều hành. Lễ tân nhà hàng hoàn toàn thủ công lên danh sách nhu cầu khách từ bên phòng. Các bộ phận phục vụ bàn đặt công tác vệ sinh và an toàn thực phẩm lên hàng đầu, luôn phục vụ tận tình chu đáo, quan tâm đến mọi nhu cầu của khách. Đảm bảo tinh thần, thaí độ và phong cách phục vụ thật nhiệt tình với khách vì điều này giữ vai trò quan trọng. Đồng thời phải bảo vệ tài sản, thay thế dụng cụ phục vụ khách khi cần thiết.
5. Bộ phận nhà bếp
Thông qua bảng kê khai nhu cầu của khách từ lễ tân nhà hàng, bếp trưởng lên danh sách những nguyên liệu cần thiết cho công việc nấu nướng sau đó đưa cho kế toán nhà hàng một bản và bản còn lại để đối chiếu khi người cung cấp hàng mang hàng tới. Bộ phận nhà bếp phải đảm bảo công việc an toàn trong ăn uống cho khách hàng để giữ uy tín với khách. Đảm bảo yêu cầu của khách, luôn thay đổi việc chế biến vừa đảm bảo thẩm mỹ, vừa hợp khẩu vị với những món ăn đặc sản độc đáo của khách sạn làm hài lòng quý khách.
6. Bộ phận kế toán nhà hàng
Lập hóa đơn chi cho các công việc liên quan đến nhà bếp, khi nhà bếp lên danh sách các nguyên liệu, kế toán có trách nhiệm tìm nhà cung cấp hoặc gọi cho các nhà cung cấp đã ký hợp đồng với nhà hàng để họ mang nguyên liệu đến. Lập hóa đơn thanh toán cho các nhà cung cấp và gửi cho kế toán thu chi để thanh toán vào sổ hàng ngày các hóa đơn của nhà cung cấp. Có trách nhiệm thu tiền của khách nếu khách muốn thanh toán luôn hoặc gửi sang cho bộ phận lễ tân điều hành nếu khách muốn thanh toán sau cùng với tiền phòng.
7. Bộ phận quản lý tài chính
Bộ phận này nắm giữ nguồn tài chính của khách sạn, trong bộ phận này đặt một máy tính lưu trữ thông tin về thông tin nhân viên, người cung cấp hàng cho khách sạn.
Kế toán tổng hợp hàng ngày lập bảng kê khai thu chi của khách sạn thông qua lễ tân và giao lại toàn bộ cho thủ quỹ. Lập hóa đơn cho người cung cấp để thủ quỹ xuất tiền. Nhập vào máy và vào sổ những khoản thu chi trong ngày của khách sạn. Lập hóa đơn những khoản chi phí lớn để trình giám đốc ký trước khi ký kết với nhà cung cấp. Lập bảng thống kê hàng tháng về lương của nhân viên, thống kê toàn bộ các khoản thu chi trong tháng.
Thủ quỹ có nhiệm vụ chi trả các khoản từ hóa đơn của kế toán. Thanh toán lương cho toàn bộ nhân viên của khách sạn. Đảm bảo an toàn với tiền của khách sạn giữ trong két.
Nhận bảng danh sách từ kế toán đối chiếu với hóa đơn từ nhà cung cấp mang đến để kiểm tra hàng và xếp vào kho, ký nhận và giao cho người cung cấp để lên thanh toán với thủ quỹ, bản còn lại giữ lại để tiện cho việc đối chiếu. Khi nhân viên nhà phòng lấy đồ thì có trách nhiệm giao và ghi nhận lại. Kiểm tra kho nếu thấy hết phải lập danh sách giao cho kế toán để gọi cho người cung cấp.
8.Bộ phận bảo vệ (an ninh khách sạn)
Bé phËn b¶o vÖ ®îc biªn chÕ thµnh mét ®éi (®éi b¶o vÖ) cã ®éi trëng phô tr¸ch vµ ®iÒu hµnh c«ng viÖc cña toµn ®éi. §éi cã nhiÖm vô b¶o vÖ trËt tù, an ninh, an toµn môc tiªu giíi h¹n trong khu«n viªn kh¸ch s¹n, tr«ng gi÷ c¸c tµi s¶n cña kh¸ch. ChÞu tr¸ch nhiÖm qu¶n lý, vËn hµnh toµn bé hÖ thèng ®iÖn, hÖ thèng níc phôc vô c¸c nhu cÇu ë c¸c phßng cña Kh¸ch s¹n. Duy tr× thêng xuyªn sù ho¹t ®éng cña hÖ thèng ®iÖn, níc ®¸p øng yªu cÇu sö dông khi cÇn.
- Thêng xuyªn kiÓm tra, ph¸t hiÖn nh÷ng sù cè vÒ líi ®iÖn, ga, hÖ thèng dÉn níc, c¸c van níc cña Kh¸ch s¹n vµ c¸c thiÕt bÞ dïng ®iÖn, níc. Cã sù cè ph¶i kÞp thêi kh¾c phôc hoÆc b¸o c¸o trî lý ®iÒu hµnh ®Ó cã biÖn ph¸p kh¾c phôc nh»m ®¶m b¶o an toµn vµ phôc vô kÞp thêi c¸c yªu cÇu cña kh¸ch vµ Kh¸ch s¹n L¾p míi hoÆc c¶i t¹o, ®iÒu chØnh c¸c æ ®iÖn, níc, ®ång hå ®o ®iÖn níc, cÇu dao, c«ng t¾c... Khi cã yªu cÇu.
- Kh¾c phôc nh÷ng sù cè vÒ ®iÖn tho¹i hoÆc xem xÐt ®Ó b¸o cho ngêi cã tr¸ch nhiÖm söa ch÷a. Thêng xuyªn xem xÐt ®Ò xuÊt ®Ó kh¾c phôc t×nh tr¹ng dß, rØ ®iÖn, níc ®¶m b¶o an toµn vµ tiÕt kiÖm. Gi¶i quyÕt nh÷ng bÊt hîp lý cã liªn quan Cã tr¸ch nhiÖm theo dâi ®¶m b¶o an toµn khu vùc bÓ b¬i, nhÊt lµ trÎ em ®Õn ch¬i, b¬i léi... Tr«ng gi÷ ®¶m b¶o an toµn c¸c ph¬ng tiÖn «t«, xe m¸y, xe ®¹p cña kh¸ch ®Õn nghØ, lµm viÖc, giao dÞch t¹i Kh¸ch s¹n.
- Khi cã kh¸ch (xe cña kh¸ch) vµo Kh¸ch s¹n, nh©n viªn b¶o vÖ ®ãn kh¸ch ë phÝa ngoµi, liªn hÖ nhu cÇu cña kh¸ch, chØ dÉn, giíi thiÖu kh¸ch ®Õn giao dÞch t¹i quÇy lÔ t©n. ChØ dÉn s¾p xÕp xe cña kh¸ch vµo ®óng khu vùc ®ç xe.
- NÕu kh¸ch cã hµng ho¸ mang vµo hoÆc mang ra Kh¸ch s¹n (ngoµi hµnh lý) ph¶i xem xÐt, nÕu cã dÊu hiÖu nghi ngê cÇn cã h×nh thøc thÝch hîp ®Ó qu¶n lý hoÆc ®¶m b¶o an toµn cho kh¸ch, hoÆc b¸o ngêi cã tr¸ch nhiÖm biÕt. NÕu nghi ngê ph¶i gi÷ l¹i vµ b¸o cho ngêi cã tr¸ch nhiÖm gi¶i quyÕt. ChØ cho mang hµng ho¸ (trõ hµnh lý cña kh¸ch) ra ngoµi khi cã sù ®¶m b¶o hoÆc lÖnh cña ngêi qu¶n lý. §Æc biÖt chó ý ph¸t hiÖn nh÷ng ngêi l¹ mÆt ®Õn khu vùc Kh¸ch s¹n cã ý quan s¸t, theo dâi ho¹t ®éng, quan s¸t tµi s¶n ... ®Ó cã ph¬ng ¸n ®èi phã kÞp thêi. §¸ng chó ý nh÷ng phÇn tö lîi dông sù s¬ hë, ®«ng ngêi ®Ó lÊy c¾p, ®¸nh tr¸o xe m¸y, xe ®¹p cña kh¸ch.
C«ng viÖc cña b¶o vÖ hoµn toµn lµm thñ c«ng do c¸c nh©n viªn thay phiªn nhau (lµm theo ca) kiÓm tra kh«ng cã hÖ thèng th«ng tin ®Ó n¾m râ mäi t×nh h×nh cña kh¸ch s¹n v× vËy cã nhiÒu sù cè x¶y ra b¶o vÖ kh«ng n¾m ®îc ngay, g©y chËm trÔ mµ mÊt søc lao ®éng nhiÒu v× kh¸ch s¹n réng víi nhiÒu phßng ban rÊt khã n¾m hÕt.
II. HIỆN TRẠNG VÀ GIẢI PHÁP
1. Hệ thống quản lý khách sạn cũ
Nền kinh tế phát triển cũng đồng nghĩa với các nhu cầu đời sống xã hội ngày càng cao. Chính vì thế ngày càng nhiều các khách sạn ra đời với nhiều kiến trúc hạ tầng khác nhau. Nhưng các khách sạn ra đời vẫn chỉ phần nào đáp ứng được các nhu cầu của những khách nghỉ mà chúng ta có thể gọi họ là những khách nghỉ “vãng lai”, vì họ không chủ động được trong việc thuê phòng. Phần đa số khách nghỉ đi du lịch đến nơi mới thuê phòng ở cho mình, chính vì thế đôi khi họ có thể gặp phải trường hợp hết phòng hoặc không tìm được loại phòng vưà ý cho mình do chưa biết trước các thông tin về khách sạn họ cần nghỉ. Hầu hết các khách sạn ở nước ta hiện nay chỉ áp dụng mạng nội bộ trong quản lý khách sạn chứ không sử dụng rộng rãi mạng toàn cầu để quảng bá các thông tin, tên tuổi, cách quản lý khách sạn và ưu điểm của khách sạn, nên chưa thu hút được đông đảo các khách nghỉ ở xa đến nghỉ ở kh ách sạn nên ưu điểm của khách sạn chưa phát huy hết. Ngoài ra việc quản lý phòng và khách chưa được thuận tiện, ví dụ như khi khách đến nghỉ còn dùng phương pháp thủ công bộ phận lễ tân phải thông qua bộ phận nhà phòng để biết phòng đủ hay trống, như vậy rất bất tiện và mất thời gian
Chính vì vậy cần có một hệ thống quản lý mới phù hợp hơn để thuận tiện trong việc quản lý khách sạn nâng cao hiệu quả kinh doanh, cũng đồng nghĩa với việc đáp ứng được nhu cầu thị hiếu của khách nghỉ.
2. Giải pháp: Hệ thống quản lý khách sạn trên mạng (các Website)
Từ thực trạng trên chúng tôi đã đưa ra giải pháp tối ưu nhất, nhằm giúp cho khách du lịch hiểu rõ hơn về thực trạng của khách sạn khi cần thuê phòng và dễ dàng lựa chọn đư ợc nhu cầu thuê phòng của mình. Bằng cách, thiết lập một trang website của khách sạn đưa lên mạng, nhằm giới thiệu về các thông tin, các dịch vụ của khách sạn để khách có thể truy cập đựoc đến trang web của khách sạn ở bất cứ nơi nào, lựa chọn đựơc đúng các yêu cầu của mình về chuyến đi, và có thể đăng ký phòng nghỉ theo yêu cầu của mình mà không cần phải mất thời gian đến khách sạn. Hơn nữa việc đưa trang web của khách sạn lên mạng cũng góp phần làm cho bộ máy quản lý của khách sạn được dễ dàng và thuận tiện hơn
CHƯƠNG II
LÊN KẾ HOẠCH
I. CHƯƠNG TRÌNH ỨNG DỤNG
Website là một ứng dụng thương mại điện tử trên mạng chính vì vậy nó chỉ có thể được sử dụng khi máy tính được kết nối với một hệ thống mạng. Chương trình của trang Web được tải và quản lý trên một máy chủ (server) và có một địa chỉ mạng tương ứng để các máy khách (client) có thể truy cập tới. World Wide Web (www) là dịch vụ đa truyền thông của Internet, chứa một kho tài liệu đa năng khổng lồ được viết bằng ngôn ngữ HTML (Hypertext Markup Language). Hypertext (văn bản đa năng) là phương pháp trình bày văn bản, hình ảnh, âm thanh và video liên kết với nhau trong một trang Web kết hợp không theo thứ tự. Nguyên lý hoạt động của w.w.w được xây dựng trên mô hình Client/Server. Theo mô hình này để truy cập đến trang Web Client sẽ sử dụng mô hình duyệt Web (Web Browser). Khi người sử dụng muốn truy cập đến trang Web họ chỉ việc cho biết địa chỉ của trang Web đó, Client sẽ tự động kết nối tới Server cần liên lạc rồi sử dụng lược đồ HTTP để liên lạc với Web Server. Khi đó nhiệm vụ của Web Server là tiếp nhận yêu cầu của người sử dụng gửi từ Client qua CGI, phân tích các yêu cầu đó và thực hiện các tính toán sử lý dữ liệu. Sau khi thực hiện, kết quả được sử lývà đựoc chuyển về dạng siêu văn bản gửi cho CGI. CGI sẽ tự động gửi trở về cho Client, tại đây Web Browser sẽ hiển thị trang Web đó bằng các trình duyệt Web (như Internet Explorer, Nescape).
II. ƯU ĐIỂM HỆ THỐNG MỚI
Hệ thống quản lý khách sạn trên web có ưu điểm so với hệ thống quản lý cũ là được giới thiệu rộng rãi trên mạng các thông tin cần thiết về khách sạn để khách nghỉ có thể xem xét, lựa chọn theo nhu cầu của mình.
Bên cạnh đó, hệ thống quản lý này giúp cho người quản lý biết được tình hình khách đăng ký nghỉ trong ngày, tình hình sử dụng các dịch vụ ... để có thể thông tin lại cho khách nghỉ một cách nhanh chóng, chính xác nhất.
Trong thời buổi thời gian là vàng như hiện nay, có thể nói hệ thống mới này không những đáp ứng được nhu cầu nhanh gọn của khách hàng mà còn góp phần làm tăng hiệu quả kinh doanh của khách sạn.
III. RÀNG BUỘC
Để có thể cài đặt phần mềm quản lý khách sạn này, Khách sạn phải có một hệ thống máy vi tính đủ mạnh và được kết nối với nhau trong khách sạn và kết nối với Internet.
Khách sạn phải có host và domain để tải chương trình lên mạng phục vụ cho việc quảng bá khách sạn cho những người truy cập mạng trên toàn thế giới.
Hệ điều hành có thể sử dụng Window 2000, XP ...
CHƯƠNG III
NGHIÊN CỨU KHẢ THI
I. ĐÁNH GIÁ LỢI ÍCH, CHI PHÍ
Trong thời đại Công nghệ thông tin phát triển như hiện nay hầu hết các công ty, xí nghiệp và các hộ gia đình đều có máy tính cá nhân được kết nối Internet và cước phí truy cập vào mạng ngày càng giảm, đường truyền ngày càng mạnh để tăng khả năng truy cập các ứng dụng hữu ích trên mạng trong đó có thương mại điện tử. Chính vì cậy có thể nói với một chi phí rất thấp mà người dùng có thể tìm kiếm được những thông tin mình cần một cách nhanh chóng và hiệu quả. Với chương trình quản lý khách sạn trên web chúng ta không cần phải đến tận khách sạn hoặc đi bất cứ đâu nếu chúng ta có máy ở nhà hoặc ở nơi nào đó bạn muốn với một máy tính có nối mạng Internet, chúng ta có thể dễ dàng tìm được những thông tin về khách sạn và đăng ký phòng qua mạng một cách đơn giản, nhanh chóng..
II. ĐÁNH GIÁ KỸ THUẬT
Chương trình sử dụng ngôn ngữ lập trình mạng khá phổ biến, dễ viết. Cơ sở dữ liệu đơn giản, không phức tạp nên ứng dụng chạy trên mạng có tốc độ nhanh. Trang Web có giao diện thân thiện, hài hòa và dễ sử dụng đối với mọi đối tượng truy cập mạng. Dù bạn là người mới biết về mạng, mới sử dụng máy tính thì bạn cũng dễ dàng có được những thông tin cần thiết khi bạn truy cập tới website quản lý khách sạn này. Chương trình cho phép bạn truy cập với cả trình duyệt Internet Explore và Nescape Navigator.
Với những tính năng kỹ thuật đơn giản, bắt mắt, hiệu quả và tốc độ tốt như vậy thì chương trình quản lý khách sạn trên mạng này sẽ là một trong những chương trình được người sử dụng mạng yêu thích và sẽ là một bài mẫu rất tốt cho những sinh viên muốn viết được những trang web đẹp và hiệu quả.
CHƯƠNG IV
XÁC ĐỊNH YÊU CẦU CỦA HỆ THỐNG
I. HỆ THỐNG HIỆN TẠI
Hệ thống hiện tại là Quản lý khách sạn bằng phần mềm quản lý thông qua mạng LAN chỉ quản lý một phần nào trong khách sạn, chưa giới thiệu khách sạn tới người dùng ở trên toàn thế giới. Với phần mềm cũ này thì việc quảng bá khách sạn và đặt phòng qua mạng là một mặt hạn chế trong việc phát triển của khách sạn.
II. HỆ THỐNG MỚI
Chương trình quản lý khách sạn trên web nhằm mục đích giúp người dùng đỡ mất thời gian, thuận tiện, giảm chi phí khi xem thông tin về khách sạn và giúp người quản lý được hiệu quả nhất. chương trình gồm ba chức năng chính: quản lý khách, quản lý phòng, quản lý dịch vụ và được thể hiện như sau:
Biểu đồ phân cấp chức năng
Quản lý khách
Quản lý phòng
Quản lý
dịch vụ
Quản lý thiết bị
Báo cáo
Nhập khách
Nhập đăng ký
Cập nhật phòng
Xếp phòng
Theo dõi phòng
Trả phòng
Lập hóa đơn phòng
Nhập DV
Tính tiền DV
Nhập thiết bị
T.kê thiết bị
Báo cáo định kỳ
Lập hóa đơn tổng
Quản lý khách sạn
K
H
¸
c
h
BAN GIÁM ĐỐC
KHÁCH SẠN
Yêu cầu đăng ký
Yêu cầu nhận phòng
Yêu cầu dịch vụ
Yêu cầu thanh toán
Trả lời yêu cầu nhận phòng
Trả lời yêu cầu đăng ký
hoá đơn dịch vụ
hoá đơn thanh toán
Báo cáo doanh thu
QUẢN LÝ
KHÁCH SẠN
Yêu cầu thay thế thiêt bị, tiện nghi
Thống kê lại thiêt bị, tiện nghi
Yêu cầu thay đổi đơn giá phòng
Biểu đồ mức khung cảnh
Biểu đồ mức dữ liệu mức đỉnh
1
Quản lý
khách
3
Quản lý
dich vụ
5
Báo cáo
4
Quản lý
thiết bị
2
Quản lý
phòng
Khách
yêu cầu dich vụ
yêu cầu đăng ký
trả lời yêu cầu đăng ký
yêu cầu nhận phòng
trả lời yêu cầu nhận phòng
Bán giám đốc
Báo cáo doanh thu
yêu cầu thanh toán
hoá đơn thanh toán
hoá đơn dich vụ
yêu cầu thanh toán
tiennghi
khach
hdthue
dangky
sudungdv
phong
1.1
Nhập
khách
1.2
Nhập
đăng ký
Khách
Yêu cầu thuê phòng
Yêu cầu đăng ký phòng
khach
Trả lời
dangky
Biểu đồ mức dữ liệu mức dưới đỉnh của quá trình “quản lý khách”
Khách
2.4
Trả phòng
2.5
Lập hoá đơn phòng
Khách
Yêu cầu trả phòng
phong
Trả lời
hdthue
2.2
Xếp phòng
2.3
Theo dõi phòng
2.1
Cập nhật phòng
Yêu cầu nhận phòng
Trả lời
Thông tin phòng trống
Hoá đơn phòng
khach
Ban giám đốc
Yêu cầu thay đổi giá phòng
Biểu đồ mức dữ liệu mức dưới đỉnh của quá trình “quản lý phòng”
Biểu đồ mức dữ liệu mức dưới đỉnh của quá trình “quản lý dich vụ”
3.1
Nhập
dich vụ
3.2
Tính tiền
dich vụ
Khách
Yêu cầu dich vụ
Hoá đơn dich vụ
khach
sudungdv
Biểu đồ mức dữ liệu mức dưới đỉnh của quá trình “quản lý thiết bị”
4.1
Nhập
thiết bị
4.2
Thống kê
thiết bị
Yêu cầu thay thế thiêt bị, tiện nghi
Thống kê lại thiết bị
tiennghi
Bán giám đốc
5.2
Lập hoá
đơn tổng
5.1
Bao cáo
định kỳ
Báo cáo doanh thu
Hoá dơn tổng
hdthue
Bán giám đốc
Khách
sudungdv
khach
Biểu đồ mức dữ liệu mức dưới đỉnh của quá trình “báo cáo”
CHƯƠNG V
THIẾT KẾ CƠ SỞ DỮ LIỆU
MÔ HÌNH THỰC THỂ HOÀN CHỈNH
Các bảng dữ liệu
Bảng dangky (đặt phòng)
Bảng chứa thông tin khách đăng ký bao gồm số đăng ký, tên khách, địa chỉ, email, điện thoại, ngày đăng ký đến, ngày đăng ký đi số người và yêu cầu khác.
Bảng hdthue (hợp đồng thuê)
Bảng danh mục chứa các thông tin hợp đồng bao gồm số hợp đồng, mã phòng, mã khách, ngày đến và ngày đi.
Bảng cthdthue (chi tiết hợp đồng thuê)
Bảng chứa thông tin chi tiết hợp đồng bao gồm hợp đồng thuê và mã phòng.
Bảng loaiphong (loại phòng)
Bảng danh mục chứa thông tin loại phòng bao gồm loại phòng, số lượng tiện nghi, kiểu phòng, giá phòng và tên loại phòng.
Bảng phong (phòng)
Bảng chứa danh mục thông tin phòng bao gồm mã phòng, loại phòng và tên phòng.
Bảng quoctich (quốc tịch)
Bảng danh mục chứa thông tin quốc tịch bao gồm mã quốc tịch và tên nước.
Bảng sudungdv (sử dụng dịch vụ)
Bảng danh mục chứa thông tin sử dụng dịch vụ bao gồm mã sử dụng dịch vụ, số hợp đồng, mã dịch vụ, ngày sử dụng và số lượng.
Bảng tiennghi (tiện nghi)
Bảng danh mục chứa thông tin tiện nghi bao gồm mã tiện nghi, loại phòng và số lượng.
Bảng thanhvien (thành viên)
Bảng chứa thông tin thành viên hệ thống bao gồm mã thành viên, tên đăng nhập, mật khẩu, quyền đăng nhập, họ, tên, địa chỉ, điện thoại, email.
Bảng loaidv (loại dịch vụ)
Bảng danh mục chứa thông tin loại dịch vụ bao gồm mã dịch vụ, tên dịch vụ, tiền dịch vụ và đơn vị tính.
Bảng khach (khách)
Bảng chứa thông tin khách thuê bao gồm mã khách, số CMND, họ, tên, địa chỉ, điện thoại, email, giới tính và mã quốc tịch.
Bảng khachkem (khách đi kèm)
Bảng chứa thông tin khách đi kèm với khách thuê bao gồm mã khách thuê, mã khách kèm, họ, tên, giới tính, số CMND và mã quốc tịch.
Mô hình thực thể liên kết dữ liệu
sodk
tenkhach
diachi
email
dienthoai
didong
ngaydkden
ngaydkdi
songuoi
yeucaukhac
dangky
mskhach
soCMND
ho
ten
diachi
email
dienthoai
didong
gioitinh
maqt
khach
mskhach
mskkem
ho
ten
gioitinh
soCMND
maqt
khachkem
matv
tendangnhap
matkhau
qdangnhap
ho
ten
diachi
email
dienthoai
thanhvien
msqt
tennuoc
quoctinh
sohd
mskhach
ngayden
ngaydi
hdthue
mssddv
sohd
msdichvu
ngaysudung
soluong
sudungdv
msdichvu
tendichvu
dongia
dvitinh
loaidichvu
msphong
msloaiphong
tenphong
phong
msloaiphong
tenloaiphong
kieuphong
giaphong
loaiphong
mstnghi
msloaiphong
tentiennghi
soluong
tiennghi
sohd
msphong
cthdthue
CHƯƠNG VI
CÀI ĐẶT TRIỂN KHAI
I.CÀI ĐẶT HỆ THỐNG VÀ CÁC CHƯƠNG TRÌNH ỨNG DỤNG
Để tạo một trang “web động” có rất nhiều ngôn ngữ khác nhau như: PHP,ASP, JSP/Servlet, CGI,… Một trang web được gọi là “động” khi mà chỉ khi nó được kết nối với một cơ sở dữ liệu. Hiện nay có rất nhiều loại hệ cơ sở dữ liệu khác nhau cho bạn dùng như: Microsoft Accesss, Fox, Mỉcosoft SQL, Oracle…Mỗi loại ngôn ngữ lập trình và mỗi loại cơ sở dữ liệu đều có những ưu điểm riêng nên chúng ta rất khó để chọn lựa.
Sau một thời gian nghiên cứu và thảo luân chúng tôi đã quyết định dùng ngôn ngữ Jsp cùng với Microsoft SQL làm cơ sở dữ liệu để viết chương trình vì:
Ngôn ngữ Jsp/Servlet là một ngôn ngữ rất mạnh chuyên dụng để viết Web (nền tảng dựa trên ngôn ngữ lập trình Java).
Nó được rất nhiều trình duyệt Web hỗ trợ và nó có một số lượng lớn người dùng.
Microsoft SQL là một hệ cơ sở dữ liệu rất thích hợp dùng cho những chương trình cỡ trung bình và cỡ lớn.
1. Cài đặt Window 2000/NT
Bạn có thể sử dụng Window 2000 pro hoặc Win 2000 server nhưng tốt nhất là sử dụng win 2000 server.
Win 2000 có hai cách cài
Cách 1: cài trực tiếp trên Window cũ (Window 9x, Win 2000...). bạn chạy file Setup.exe hoặc bạn chọn biểu tượng intall trên menu autorun.
Cách 2: cài trên dos bạn vào thư mục I386 tìm file winnt.exe để cài.
Các bước cài Win 2000 hướng dẫn rất rõ. bạn lần lượt làm từng bước theo hướng dẫn như
Chọn vị trí để chứa các file hệ thống của Window.
Nhập bạn có format ổ đĩa chọn kiểu dịnh dạng NTFS, Fat32...hay không ?
Nhập số đăng ký để cài Window 2000.
.....
2. Cài đặt JRUN
Jrun là trình chủ Web server thực thi được các công nghệ Web mới nhất của Java như Servlet/Jsp. Mặc dù hiện nay có rất nhiều trình chủ Web dành cho Java như: Java Web Server, Web logic,.... Nhưng chúng ta nên chon Jrun Web server hạy trên nền Win NT/2000 vì Win 2000 là hệ điều hành mạng.
Để cài đặt Jrun máy bạn phải có cấu hình tối thiểu:
32 Mb Ram (64Mb thì tốt hơn).
50 Mb dung lượng đĩa cứng.
Hệ điếu hành:
Jrun có thể cài trên Win 9x hay Win 2000, Unix và Linux nhưng tốt nhất ta chon Win 2000.
Sử dụng trình duyệt Web Netcape hay Internet Explorer 3.0 trở lên.
Môi trường máy ảo JRE.
Cài phiên bản Jdk 1.3 hoặc mới hơn.
Các bước cài đặt như sau:
Dừng Web Server nếu đã kết nối với Jrun hay cài Jrun trước đó.
Tìm tập tin cài đặt của Jrun như: jrun-31-win-us.exe (hay setup.exe) v à chay file này.
Trang giới thiệu của Jrun xuất hiện.
Chon phiên bản mà ta có quyền sử dụng.
Tiếp tục click next xuất hiện trang yêu cầu bạn nhập serial, nếu không có thì ta bỏ qua.
Chon thư muc để chứa toàn bộ tập tin của Jrun.
Chon kiểu cài đặt và click next để tiếp tục.
Chọn các components kèm theo.
Chọn Programmer Forder.
Nếu muốn Jrun chạy như một dịch vụ hỗ trợ của Window ta chọn Install Jrun Services.
Tiếp theo chọn phiên bản hỗ trợ của Java (ví dụ Jdk1.3).
Sau đó chọn cổng (Port) cho phần quản trị Jrun. Giá trị nay mặc nhiên là 8000.
Tiếp đến ta nhâp tên và Password của người quản trị.
Tiêp tục click next nhập tên và email.
Sau khi cài đặt thành công ta có thể khởi động lại máy tính. Quá trình cài đặt hoàn tất và ta có thể sử dung Jrun.
3. Cài đặt Microsoft SQL 7.0.
Các chương trình của Microsoft rất dễ cài đặt do vậy cách cài đặt SQL 7.0 cũng tương tự như các ứng dụng chạy trên Window khác.
SQL có hai bản nếu ta sử dụng Win 2000 Professional thì chỉ cài bản Desktop Edition còn nếu sử dụng Win 2000 Server thì cài bản Stardard Edition.
Khi cài đặt ta phải quan tâm đến tên máy tính của Windows 2000 Professional. Tiếp đến, SQL yêu cầu cung cấp username và password của Windows 2000 Professional để service của SQL đăng nhập khởi tạo các dịch vụ cần thiết, nhưng ta cũng có thể sử dụng username và password mà SQL cung cấp sẵn để đăng nhập vào hệ cơ sở dữ liệu của SQL.
Sau khi cài đặt SQL xong, ta cần đăng ký máy chủ với SQL Server:
Chọn Start/Programs/Microsoft SQL Server 7.0/Enterprise Manager. Nhấp phải chuột lên mục SQL Server Group và chọn New Server Registration để thực hiện thao tác đăng ký.
II. TÌM HIỂU NGÔN NGỮ
1. Làm quen với JDK
a. Sự phát triển
Java được xây dựng chủ yếu trong bộ công cụ phát triển của java như thư viên chuẩn, trong đó chứa các trình biên dịch, thông dịch, giúp đỡ , soạn tài liệu, máy ảo JVM. Đó chính là cái nền của việc phát triển các ứng dụng java.Với sự phát triển của java hiện nay, các nhà phát triển phần mềm đã phát triển thêm nhiều nhánh mới như javaMail, java TAPI, JDK trở thành môi trường bao trùm của hệ thống Java. Khởi đầu với phiên bản JDK1.0 vào năm 1995, jdk1.1 năm 1996 với nhiều cải tiến như tăng thêm các hàm giao diện xâu dựng hệ thống thư viện độc lập JavaBeans, thư viện lập trình giao diện JFC , tăng thêm các lớp mới như java.math, java.net. Java được cải tiến liên tục từ 1.1,1.1.5, 1.1.6… Bộ chấm 1.1.6 là lõi cho việc viết nên các IDE nổi tiếng như Jbuider2.0, Visual Age được ra đời cuối năm 1997, đến năm 1998, môt phiên bản mới của jdk được xuất hiện và được xem như là một bước ngoặt với tên nền java thương mại JDK1.2.
JDK1.2 có rất nhiều thay đổi trong cấu trúc và đặc điểm so với 1.1 khả năng bảo mật cao hơn và linh động hơn, nâng cao tính khả chuyển và tốc độ thực thi, kết nối với cơ sở dữ liệu dễ dàng hơn. JDK1.2 đã tích hợp JavaBeans và JFC vào trong lõi của java API chứ khong tách biệt như ở JDk1.1. Điều đó làm cho java phình to ra nhưng các ứng dụng viết bằng JDK1.2 chạy nhanh hơn từ 30 đến 40% so vơi các bản JDK1.1. Một đặc điểm mới nữa là java phát triển thêm Java 2D nâng cao tính năng đồ hoạ cho java một cách rất đáng kể. Sự phát triển của java với JDK1.2 còn được biết đến với các ứng dụng cho môi trường ứng dụng xí nghiệp như Enterprise JavaBeans, JavaServer Page.
Tuy thế java vẫn còn chạy chậm so với các chương trình viết bàng ngôn ngữ thông dụng và do đó mất tính cạnh tranh. Vì thế tháng 7 năm 2002, Sun và các nhà phát triển java đã cùng ngồi lại để bàn bạc và tìm cách nậng cao tốc độ thực thi cho java. Và hiện nay bản JDK 1.4.1 đã ra đời.
b. Đặc điểm của JDK
Trước hết, muốn cài jrun chúng ta nên làm quyen với JDK1.3 trước. Hiện nay, Sun đã cung cấp nhiều phiên bản khác nhau. Chúng tôi chọn phiên bản JDK 1.3 có được trên đĩa cứng của mình.Trừ phiên bản JDK danh cho Macintosh dùng cho đồ hoạ, phiên bản khác của JDK đề chọn cách ”nói chuyện” thông qua dòng lệnh, giống như các chương trình “cổ điển” chạy trên đó trước đây. Phương thức giao tiếp cũ kỹ này vẫn được nhiều người thích dùng .
Chuyển vào thư mục C:\Java, bạn thấy các tập tin và thư mục con như sau:
Tập tin src.zip chứa mã nguồn (source) của các lớp có sẵn (lớp thư viện). Sau này, khi làm quen được với java.
Chuyển vào thư mục C:\java\bin: Trình biên dịch java là javac.exe, trình thông dịch java là java.exe. Ngoải ra còn có những thư viện liên kết động “.dll” phục vụ co hoạt động của môi trường java vào lúc chạy, được thiết lập trên nền windows NT/2000. Để thuận tiện cho việc dùng biên dịch và thông dịch java, cần khai báo lỗi tìm về thư mục C:\java\bin trong tập tin autoexec.bat.
Các lớp thư viện của JDK được đặt trong thư mục C:\java\lib:
Tập tin nén classes.zip chứa nhiều lớp được biên dịch sẵn ở dạng mã byte. Không cần bung tập tin này. Trình bên dịch Java có khả năng đọc được mã byte bên trong tập tin nén classes.zip. Nếu muốn có một thư mục riêng cho việc làm bài Java cho thuận tiện ta chỉ việc tạo riêng một thư mục mới như: C:\myjava.Trong thư mục này rồi sẽ có những lớp cần thiết do bạn tạo ra. Để trình biên dịch java tìm thấy những lớp bạn tạo ra, trong tập tin autoexec.bat, bạn khai báo một biến môi trường gọi là CLASSPATH như sau:
SET CLASSPATH=C:\MỴJAVA;C:\JAVA\LIB\CLASSES.ZIP
Khai báo như vậy, trình biên dịch sẽ tìm những lớp được nhắc đến trong chương trình java tại thư mục C:\myjava trước tiên. Nếu không thấy, trình biên dịch sẽ tìm trong tập tin thư viện lớp classes.zip ở thư mục C:\java\lib. Nếu vẫn không tìm thấy ,trình biên dịch sẽ tìm trong thư muc hiện hành.
JDK có săn nhiều thư mục mẫu để mnh hoạ những khả năng của java, được dặt trong thư mục C:\java\demo.
2. Cấu trúc thư mục của JRun
Cấu trúc thư mục của Admin Jrun
Bảng sau đây mô ta các thư mục của phần quản trị trong trình chủ Web Jrun trên môi trường Windows.Thông thường thư mục gốc của JRun sẽ được cài vào Program Files/Allaire.
Thư mục
Nội dung
/servers/Admin
Định nghĩa phần quản trị của JRun
/servers/Admin/deploy
Chứa các đốI tượng ejb
/ servers/Admin/jmc-app
Chứa các trang của Jrun management console.
/ servers/Admin/lib
Chưa các tập tin jar
/ servers/Admin/runime
Ch ứa rjb runtime
/ servers/Admin/temp
chứa các tập tin tạm thời
Cấu trúc thư mục mặc định của trình chủ WEB
Bảng mô tả các thư mục của phần Default JRun server, có hai trình chủ Web: JRUN admin server và Jrun default server.Jrun Admin server dùng cho quản trị.
Thư mục
Nội dung
/server/default
Định nghĩa phần mặc định của trình chủ Web
/server/default /default-app
Chứa các ứng dụng của servlet va jsp
/server/default /default-app/
Web-INF
Chứa tất cả các tài nguyên của JRUN default.
/server/default /default-app/
Web-INF/classes
Chứa các tập tin java.class cho các servlet.
/server/default /default-app/
Web-INF/jsp
Chứa các tập tin java.class cho trang jsp
/server/default /default-app/
Web-INF/lib
Chứa tập tin beans và các tập tin khác cho Default Jrun Server
/server/default /demo-app/samples
Chứa các tập tin mẫu servlet và jsp
/server/default /deploy
Chứa các EJBs
/server/default /ib
Chứa các tập tin –jar và .class cho default server
/server/default /runtime
Triển khai các EJBs
/server/default /runtime/classes
Chứa các class dùng để cạp đối tượng EJB.
/server/default /temp
Chứa các thư mục và tập tin tạm thời.
c. Cửa sổ điều khiển
Jrun management Console là một ứng dụng Web nhằm giúp cho bạn thao tác trên giao diện Web để cấu hình Jrun. Bạn cần sử dụng trinh duyệt Web như Netscape Navigator hay Internet Explorer để mở trang Web quản trị của Jrun.
Để dùng JMC như là một người quản trị Web server có thể thực hiện các bước sau:
Nhấp địa chỉ URL trên trình duyệt Web là :http//localhót:8000
Chon Star-> Program->Jrun 3.0 ->Jrun management Console từ nút nhấn Start của Windows.
Gõ lệnh từ dấu nhắc DOS/bin jrun-admin.
Jrun se hiện thị màn hình đăng nhập yêu cầu bạn cung cấp tài khoản người dùng và mật khẩu password. để đăng ký vào phần quản trị.
Màn hình đăng nhập quản trị trình chủ Web Jrun.
Cấu hình trình chủ Web.
Cấu hình trình chủ Web JRUN
+ Web Server address *
+ Client IP filter *
+ Web Server Port 8100
+ Ide threed timeout 300
+ Minimum threed count 1
+ Maxximum active request 100
+ Maximum concurnt request 100
+ Jrun web Server on
Sử dụng bộ trợ giúp kết nối (Jrun Connector Wizard)
Mục đích của công cụ Jrun Connector Wizard là kết nối một trình chủ Web khác với trình chủ Web Jrun.
IIS mặc nhiên chạy trên cổng 80, đấy là cổng chuẩn cho cấu hình IIS. Nếu khai báo Jrun chạy trên cùng cổng này thì sẽ xẩy ra sự tranh chấp.
Khi chạy một cổng thì có sự trao đổi giữa hai trình chủ Web với nhau. Jrun và IIS trao đổi nhau thông qua cổng 53000. Về mặt xử lý khi trang JSP được gọi Jrun sẽ dịch trang JSP này ra .class
Thay đổi mật khẩu
Thông thường do tính bảo mật nên đôi khi trong khoảng thời gian nào đó người quản trị cần thay đổi mật khẩu, chỉ cần bấm liên kết Password Change trên trình đơn của Jrun. Màn hình thay đổi mật khẩu của Jrun sẽ hiện thị.
Màn hình thay đổi password
+ Chọn Change Password.
+ Old Password là mật khẩu mà bạn đang dùng.
+ New Password là mật khẩu password cần thay đổi.
+ Re-type new password, xác nhận lại mật khẩu.
+ Bấm Submit Change để thực hiện thay đổi.
Tạo mới ứng dụng web
+ Trước khi cấu hình Jrun, bạn cần chú ý địa chỉ IP của máy chủ nơi Jrun đang chạy. Nếu không có kết nối mạng, bạn có thể sử dụng localhost hay 127.0.0.1 là địa chỉ cục bộ của máy.
+ Chọn Jrun Web Server.
+ Bấm vào phần liên kết Create an Application, màn hình Web Xuất hiện.
+ Bạn chọn Jrun Admin Server hay Jrun Default Server.
+ Nhập tên của ứng dụng (là hotel)
+ Nhập địa chỉ URL cho ứng dụng. Khi người dùng truy cập vào trang Web của bạn họ sẽ sử dụng địa chỉ URL tuệt đối nếu muốn đến thẳng trang Web chính bằng địa chỉ tuệt đối
+ Chọn thư mục cần đặt trang JSP của ứng dụng là C:/hotel là mục chứa các trang JSP của ứng dụng sẽ được dùng .
+ Sau khi điền thông tin ấn nút Create.
+ Tiếp đến bạn khởi động lại trình chủ Web tương ứng là Default Server.
+ Cuối cùng thử trên màn hình Browser của trình chủ bằng cách gõ vào địa chỉ URL: Nếu cấu hình thành công, trang chủ muongthanh.jsp của ứng dụng sẽ xuất hiện trên màn hình Web browser của trình duyệt.
Xoá một ứng dụng Web
Do sử dụng đôi khi bạn tạo ra một ứng dụng Web,nhưng có thể sau một thời gian sử dụng không cần dùng đến nó nữa và có thể xoá nó.
+ Chọn Web Application từ màn hình quản trị Jrun.
+ Jrun sẽ hiển thị danh sách các ứng dụng cần xoá, chọn ứng dụng và bấm nút Remove.
+ Để Jrun nhận ra ứng dụng bị xoá hoàn toàn, khởi động lại trình chủ Web Jrun.
Xoá ứng dụng Jrun Web Server
Cập nhật một ứng dụng Web
Nếu cần bổ sung hoặc thay đổi, có thể cập nhật lại:
+ Chọn Web Application từ màn hình quản trị của Jrun Web Server.
+ Jrun sẽ hiển thị danh sách các ứng dụng đã đăng ký trước đó.
+ Bấm vào nút chọn Edit Application.
+ Khi Jrun hiển thị danh sách ứng dụng bạn chỉ cần chọn lấy ứng dụng muốn cập nhật.
+ Tất cả các thông tin củ ứng dụng sẽ hiện ra cho phép bạn có thể bổ sung và sửa đổi.
+ Để thay đổi có hiệu lực cần phải khởi động lại trình chủ Web Jrun.
3. Tìm hiểu về jsp
Trong nhieàu tröôøng hôïp, phaàn lôùn caùc trang JSP chæ bao goàm HTML tónh, ñöôïc bieát nhö laø template text. Coù hai ngoaïi leä phuï cho quy taéc “template text ñöôïc chuyeån thaúng sang HTML tónh”. Ñaàu tieân, neáu chuùng ta muoán coù <% trong luoàng xuaát thì chuùng ta caàn phaûi ñaët <\% trong template text. Thöù hai, neáu chuùng ta muoán coù chuù thích trong JSP maø khoâng coù trong taøi lieäu keát quaû, duøng:
Chuù thích HTML coù daïng:
thì ñöôïc chuyeån qua taøi lieäu HTML thoâng thöôøng.
Caùc bieán ñöôïc ñònh nghóa saün trong JSP
Ñeå ñôn giaûn hoaù maõ trong caùc bieåu thöùc hay scriptlets trong JSP, ngöôøi ta cung caáp cho chuùng ta chín ñoái töôïng ñaõ ñöôïc ñònh nghóa tröôùc, coù ngöôøi coøn goïi laø caùc ñoái töôïng ngaàm ñònh. Do caùc khai baùo trong JSP naèm ngoaøi phöông thöùc _jspService (ñöôïc goïi bôûi service) neân caùc ñoái töôïng naøy khoâng cho pheùp caùc khai baùo truy caäp vaøo.
request
Bieán naøy coù kieåu laø javax.servlet.http.HttpServletRequest, coù phaïm vi trong moät yeâu caàu (request). Noù cho pheùp chuùng ta truy caäp vaøo caùc tham soá cuûa request nhö loaïi request (GET, POST, …) vaø caùc incoming HTTP header (cookies).
response
Coù kieåu laø javax.servlet.http.HttpServletResponse, coù phaïm vi toaøn trang (page). Chuù yù raèng vì luoàng xuaát thì thöôøng laøm vaät ñeäm cho neân vieäc gaùn maõ tình traïng cuûa HTTP vaø response header thì hôïp lyù trong JSP, maëc duø ñieàu naøy thì khoâng ñöôïc pheùp trong servlet moät khi ñaõ coù luoàng xuaát naøo ñöôïc gôûi ñeán client.
out
Coù kieåu javax.servlet.jsp.JspWriter vaø phaïm vi trong moät trang (page). Duøng ñeå gôûi caùc thoâng xuaát ñeán client. Ñoái töôïng out ñöôïc duøng thöôøng xuyeân trong scriptlets, caùc bieåu thöùc töï ñoäng ñöôïc ñöa vaøo luoàng xuaát neân hieám khi caàn tham chieáu ñeán ñoái töôïng naøy.
session
Coù phaïm vi trong moät phieân truyeàn (session) vaø kieåu töông öùng laø javax.servlet.http.HttpSession. Goïi veà caùc phieân truyeàn ñöôïc taïo töï ñoäng vì theá bieán naøy vaãn coøn keát noái ngay caû chaúng coù moät tham chieáu incoming session naøo. Moät ngoaïi leä laø neáu chuùng ta söû duïng thuoäc tính session cuûa page directive ñeå taéc caùc phieân truyeàn, maø laïi coá tham chieáu ñeán bieán session thì seõ gaây ra caùc loãi vaøo luùc trang JSP ñöôïc dòch thaønh servlet.
application
Bieán naøy coù kieåu laø javax.servlet.ServletContext, coù phaïm vi trong toaøn öùng duïng (application). ServletContext laáy töø moät ñoái töôïng caáu hình servlet laø getServletConfig().getContext(). Caùc trang JSP coù theå löu tröõ döõ lieäu persistent trong ñoái töôïng ServletContext toát hôn laø trong caùc bieán theå hieän. ServletContext coù caùc phöông thöùc setAttribute vaø setAttribute maø cho pheùp chuùng ta löu tröõ döõ lieäu
config
Bieán naøy coù phaïm vi trang (page) vaø coù kieåu töông öùng laø javax.servlet.ServletConfig.
pageContext
Bieán naøy coù kieåu laø javax.servlet.jsp.PageContext vaø coù phaïm vi laø trang (page). pageContext cho pheùp moät ñieåm truy caäp duy nhaát tôùi nhieàu thuoäc tính cuûa trang vaø cung caáp moät nôi thuaän tieän ñeå löu tröõ döõ lieäu duøng chung. Bieán pageContext löu tröõ giaù trò cuûa javax.servlet.jsp.PageContext cuøng vôùi trang hieän haønh. Coù theå xem chi tieát trong chöông II veà JavaBeans.
page
Bieán naøy ñoàng nghóa vôùi this vaø ñieàu naøy thì khoâng höõu ích trong ngoân ngöõ laäp trình Java, coù kieåu laø java.lang.Object vaø coù phaïm vi trang (page).
exception
Trong moät trang loãi, chuùng ta coù theå truy caäp vaøo ñoái töôïng exception. Bieán naøy coù kieåu laø java.lang.Throwable vaø phaïm vò laø trang (page).
Bieåu thöùc trong JSP
Bieåu thöùc trong JSP ñöôïc duøng ñeå cheøn caùc giaù trò tröïc tieáp vaøo luoàng xuaát. Noù coù daïng sau:
Bieåu thöùc naøy ñöôïc ñònh trò, ñöôïc chuyeån thaønh chuoåi, vaø ñöôïc cheøn vaøo trong trang. Söï ñònh trò dieãn ra ôû thôøi gian runtime (khi trang ñöôïc yeâu caàu) vaø do ñoù coù ñaày ñuû quyeàn truy caäp caùc thoâng tin cuûa yeâu caàu naøy. Ví duï sau ñaây moâ taû ngaøy/giôø maø trang ñöôïc yeâu caàu:
Current time:
Trong Java moãi caâu leänh ñeàu coù daáu ‘;’ keát thuùc doøng. Taïi sao bieåu thöùc trong JSP laïi khoâng coù daáu ‘;’? Vì bieåu thöùc naøy ñöôïc ñöa vaøo luoàng xuaát chaúng haïn nhö PrintWriter. Vôùi ví duï treân coù theå chuyeån vaøo servlet nhö sau:
PrintWriter out = response.getWriter();
out.println(“Current time:” + new java.util.Date());
* JSP scriptlets
Scriptlets laø nhöõng ñoaïn maõ coù chöùa baát kyø maõ Java naøo naèm giöõa “”. Neáu chuùng ta muoán thöïc hieän thöù gì ñoù phöùc taïp hôn laø chæ cheøn vaøo moät bieåu thöùc ñôn giaûn thì JSP scriptlets cho pheùp chuùng ta theâm baát kyø ñoaïn maõ Java naøo vaøo trang JSP. Caùc scriptlets naøy ñöôïc ñöa vaøo phöông thöùc _jspService (maø ñöôïc goïi bôûi service) cuûa servlet. Coù cuù phaùp:
* Khai baùo trong JSP
Moät khai baùo trong JSP cho pheùp chuùng ta ñònh nghóa caùc phöông thöùc hoaëc caùc tröôøng (bieán) coù phaïm vi toaøn trang. Khai baùo seõ ñöôïc cheøn vaøo trong lôùp cuûa servlet (beân ngoaøi phöông thöùc _jspService ñöôïc goïi bôûi service ñeå xöû lyù moät yeâu caàu). Moät khai baùo coù daïng sau:
Caùc khai baùo trong JSP thì khoâng phaùt sinh ra baát kyø thoâng xuaát naøo, chuùng thöôøng ñöôïc duøng ñeå lieân keát vôùi caùc bieåu thöùc hoaëc scriptlets.
* The page directive
page directive cho pheùp chuùng ta ñieàu khieån caáu truùc cuûa servlet baèng caùch ñöa vaøo caùc lôùp, ñaët MIME type, …. Moät page directive coù theå ñöôïc ñaët baát cöù nôi naøo trong trang JSP.
page directive ñònh nghóa moät soá thuoäc tính phuï thuoäc vaøo trang vaø giao tieáp giöõa caùc thuoäc tính naøy vôùi JSP container.
language
Ñònh nghóa ngoân ngöõ kòch baûn ñöôïc söû duïng trong scriptlets, bieåu thöùc vaø khai baùo. Trong JSP 1.2 laø phieân baûn môùi nhaát chæ coù hoå trôï “java” cho thuoäc tính naøy do ñoù “java” naøy cuõng laø giaù trò maät ñònh.
extends
Thuoäc tính naøy chæ ñònh lôùp cha (superclass) cuûa servlet seõ ñöôïc phaùt sinh cho trang JSP, coù daïng sau:
Chuù yù raèng khi söû duïng thuoäc tính naøy phaûi heát söùc caån thaän vì taïi server coù theå ñaõ duøng lôùp cha maät ñònh.
import
Thuoäc tính naøy moâ taû caùc kieåu saün duøng trong moâi tröôøng kòch baûn (theo java). Chuùng ta coù theå import vaøo töøng lôùp hoaëc caû moät goùi (package).
Neáu import vaøo nhieàu lôùp hay packages thì caùch nhau daáu “,”.
session
Thuoäc tính session kieåm soaùt lieäu coù hay khoâng moät trang tham gia vaøo HTTP session. Coù hai giaù trò “true” vaø “false”. Maät ñònh laø “true”, chæ ra raèng bieán ngaàm ñònh session neân ñöôïc noái keát vôùi session hieän haønh. Giaù trò “false” coù nghóa raèng chaúng coù session naøo ñöôïc söû duïng töï ñoäng vaø neáu coá truy caäp vaøo bieán session seõ traû loãi vaøo luùc trang ñöôïc dòch thaønh servlet.
buffer
Thoäc tính naøy xaùc ñònh kích thöôùc cuûa vuøng ñeäm ñöôïc söû duïng bôûi bieán out. Coù daïng sau:
Thuoäc tính naøy coù giaù trò maät ñònh laø “8kb”, giaù trò “none” chaúng coù vuøng ñeäm naøo ñöôïc caáp vaø taát caû döõ lieäu xuaát seõ ñöôïc ghi tröïc tieáp qua ServletResponse, PrintWriter.
autoFlush
Xaùc ñònh lieäu luoàng xuaát coù vuøng ñeäm ñöôïc töï ñoäng flush (giaù trò “true” maät ñònh) khi vuøng ñeäm ñaày hay seõ tung ra moät ngoaïi leä khi vuøng ñeäm traøn (“false”).
Chuù yù raèng seõ khoâng hôïp lyù neáu ñaët autoFlush=“false” khi buffer=“none”.
isThreadSafe
Xaùc ñònh möùc ñoä an toaøn cuûa tieåu trình (thread) ñöôïc caøi ñaët trong trang (vôùi giao tieáp SingleThreadModel), “true” laø giaù trò maät ñònh.
info
Ñònh nghóa moät chuoãi coù theå truy xuaát töø servlet baèng phöông thöùc getServletInfo().
errorPage
Thuoäc tính naøy xaùc ñònh moät trang JSP neân baát kyø caùc ngoaïi leä naøo ñöôïc tung ra nhöng khoâng baét ngoaïi leä naøy trong trang hieän haønh.
Ngoaïi leä tung ra seõ coù saün trong bieán ngaàm ñònh exception.
isErrorPage
Xaùc ñònh trang JSP hieän thôøi coù theå hoaït ñoäng nhö moät trang loãi cho moät trang JSP khaùc. Giaù trò “false” laø maät ñònh cho thuoäc tính naøy.
contentType
Thuoäc tính naøy gaùn Content-Type cho response header, moâ taû kieåu MIME cuûa taøi lieäu ñöôïc gôûi ñeán client. Thuoäc tính contentType coù moät trong hai daïng sau:
Moät soá kieåu MIME-Type thöôøng duøng: “text/html”, “text/xml”, “text/plain”, “image/gif”, “image/jpeg”.
III. VIẾT CODE THỬ NGHIỆM
Phần này tìm hiểu cách viết các chức năng cơ bản của chương trình như xem khách, sửa khách, xóa khách, thêm mới khách và tìm kiếm.
Để làm các thao tác trên cần phải kết nối với cơ sở dữ liệu. Đối với cơ chế truy xuất thông qua ODBC của Windows ta sử dụng trình điều khiển miễn phí do Sun cung cấp mang tên JdbcOdbcDriver. Khai báo tên lớp này như sau:
String drivername = “sun.jdbc.odbc.JdbcOdbcDriver”;
Tiếp đến gọi phương thức tĩnh forName của lớp Class để nạp và khởi tạo trình điều khiển:
Class.forName (drivername).newInstance();
Kể từ lúc này ta đã hoàn toàn có khả năng sử dụng trình điều khiển JDBC-ODBC để truy xuất dữ liệu. Trình điều khiển ODBC cần biết thêm những thông tin cụ thể như tài khoản đăng nhập, địa chỉ máy chủ nơi chứa cơ sở dữ liệu… Những thông tin này đã được thiết lập trước đó khi cấu hình cho chuỗi kết nôi của chương trình là hotel bằng ODBC Driver của Windows. Ta đặt thông tin này trong chuỗi kết nối như sau:
String connectionURL = “jdbc:odbc:hotel”;
String username = “sa”; (username để mở cơ sở dữ liệu)
String password = “ ”;
Ở đây chuỗi jdbc:odbc là bắt buộc đối với trình điều khiển JDBC – ODBC. Cuối cùng đối tượng Connection sẽ thể hiện kết nối đến cơ sở dữ liệu. Ta gọi phương thức getConnection của lớp DriverManager để yêu cầu trình điều khiển nạp bởi Class.forName() trước đây tiếp nhận và thực thi kết nối.
// Đối tượng kết nối JDBC
Connection con = null;
// Tạo kết nối
con = DriverManager.getConnection (connectionURL, username, password);
Bước tiếp theo quan trọng là trích rút được cơ sở dữ liệu của bảng khach chứa trong cơ sở dữ liệu. Ta định nghĩa câu truy vấn như sau:
String sqlQuery = “SELECT * FROM KHACH”;
Câu lệnh truy vấn này sẽ chọn tất cả dữ liệu của các cột có trong bảng khach.
Để yêu cầu JDBC truy vấn dữ liệu ta phải dựa vào đối tượng Statement. Đối tượng này được dùng để thực thi mọi câu lệnh SQL:
Statement stmt = null;
ResultSet rs = null;
stmt = con.createStatement();
rs = stmt.executeQuery(sqlQuery);
Sau khi nhận được kết quả trả về là tập ResultSet, ta gọi phương thức next() để đi tới từng mẩu tin và in ra kết quả của các cột.
Sau khi trang xem khách đã hoàn thành, ta tiến tới viết các chức năng như thêm, xóa, sửa, tìm kiếm khách hoàn toàn dễ dàng.
Cách tìm kiếm dữ liệu: đây là một số đoạn mã chính:
string sWhere=””;
// tìm theo họ
String pho=getParam(request,"ho");
pho=replace(pho, "'", "''");
sWhere += " khach.ho like '%" + pho + "%'";
//Tìm theo quốc tịch
String pmaqt = getParam( request, "maqt");
if (!pmaqt.equals("")) sWhere += " AND khach.maqt=" + pmaqt;
//Tìm theo tên
String pten=getParam(request,"ten");
pten=replace(pten, "'", "''");
sWhere += " AND khach.ten like '%" + pten + "%'";
// Tạo truy vấn để tìm khách
String sSQL="SELECT khach.mskhach, khach.soCMND, khach.ho, khach.ten, khach.diachi, khach.dienthoai, khach.didong, khach.email, khach.phai, tennuoc as tenqt FROM khach, quoctich WHERE khach.maqt=quoctich.maqt AND"+sWhere;
Cách tạo truy vấn xóa:
qlksmskhach=getParam(request, "mskhach");
sSQL ="DELETE khach WHERE mskhach="+qlksmskhach;
IV. HƯỚNG DẪN SỬ DỤNG
Trang chủ:
Trang này chỉ giới thiệu tới người truy cập những vấn đề cơ bản của khách sạn với 4 thứ tiếng: Việt Nam, Pháp, Đức, Italia (hiện nay hệ thống mới chỉ phát triển ở bản tiếng Việt).
Tại lề trái, người sử dụng có thể dễ dàng nhận thấy một Menu các danh mục cần liên kết tới và ô đăng nhập hệ thống. Nếu người sử dụng chỉ là người bình thường thì họ chỉ có thể truy cập đến những trang giới thiệu về khách sạn mà không thể vào được những trang bên trong hệ thống được như: Giới thiệu, Tiện nghi & phòng, Dịch vụ cho thuê xe, Dịch vụ & giải trí, Liên hệ, Đặt phòng.
Trong đó:
Trang giới thiệu
Trang này giới thiệu với khách hàng về lịch sử, quá trình hình thành, những năm họat động, vị trí… của khách sạn Mường Thanh.
Trang Tiện nghi & phòng
Trang này giới thiệu tới khách hàng những thông tin về các loại phòng và giá của nó để khách hàng tiện chọn lựa căn phòng phù hợp với giá tiền và nhu cầu của mình.
Trang Dịch vụ cho thuê xe
Trang này đưa ra cho khách hàng thông tin về dịch vụ cho thuê xe của khách sạn bao gồm những chuyến du lịch với các loại xe tùy nhu cầu của khách hàng.
Trang Dịch vụ & giải trí
Trang này giới thiệu với khách hàng những dịch vụ khác của khách sạn và những nơi vui chơi giải trí trong và ngoài khách sạn đảm bảo cho khách hàng sẽ có những phút giây vui chơi thật thoải mái.
Trang Liên hệ
Trang này cung cấp cho khách hàng địa chỉ và điện thoại của khách sạn để tiện việc liên lạc cho khách hàng.
Trang đặt phòng
Trang này đưa ra cho khách hàng một form nhập những thông tin cần thiết cho việc đặt phòng qua mạng. Khách hàng chỉ việc điền những thông tin bắt buộc (có đánh dấu *) và có thể điền thêm những thông tin khác để khách sạn tiện liên lạc. Khi bản đăng ký đã điền xong và hợp lệ, khách hàng bấm nút gửi đi thì sẽ nhận được một thông báo là sau 24h nữa kể từ lúc đăng ký khách sạn sẽ liên lạc lại với khách đăng ký để hoàn tất những thủ tục cần thiết. Còn nếu người truy cập là quản trị viên của hệ thống thì khí đăng nhập vào, họ mới có thể truy cập vào trang admintruycap chỉ dành cho người quản trị. Trang này giúp cho người quản trị liên kết tới những trang khác của hệ thống để làm các thao tác như xem, xóa, sửa, tìm kiếm và thêm mới các danh mục như: Đăng ký thành viên mới, quản lý phòng, quản lý loại phòng, quản lý khách, quản lý loại dịch vụ, quản lý tiện nghi, quản lý sử dụng dịch vụ và quản lý hợp đồng thuê.
Trang Admitruycap
Khi người quản trị đăng ký thành viên mới thì người này có quyền đăng nhập mặc định là 1, tức là có quyền tương đương với khách, chỉ có thể truy cập tới những trang giới thiệu của khách sạn mà thôi. Nhưng khi người quản trị muốn đưa người này lên làm quản trị viên thì người quản trị chỉ việc mở cơ sở dữ liệu, mở bảng thành viên và thay đổi quyền đăng nhập của người đó là 2, tức là có quyền admin. Và người đó trở thành một người quản trị khác của hệ thống.
Chúng tôi cung cấp sẵn một User và pass của một quản trị viên là :User name: admin và Password: admin . CHƯƠNG VII
KẾT LUẬN
HẠN CHẾ VÀ HƯỚNG PHÁT TRIỂN :
1. Kết quả:
Chương trinh đã hoàn thiện được các chức năng chính như: nhập, sửa, xoá khách, lập hoá đơn khách, tính tiền thuê phòng, tiền sử dụng dịch vụ của khách. Nhưng trong quá trình thực hiện chương trình nhóm còn gặp một số khó khăn và hạn chế sau:
Với thời gian có hạn, nhóm không thể khảo sát hết những tính năng cụ thể của từng công nghệ.
Các công nghệ mà Java cung cấp tuy mạnh, hiệu quả nhưng còn khá mới mẻ.
Trong quá trình viết code cho trương trình nhóm gặp khó khăn khi tính tiền của khách nguyên nhân là nhóm không tìm được các hàm sử lý ngày tháng trong java.
Chương trình chưa có nhiều thờI gian dể thử nghiệm nên chưa thể chắc chắn về tính ổn định. rất có thể là một số phần còn chưa logic và chưa thật sự chính xác.
Chương trình còn gặp khó khăn khi nhúng phông chữ tiếng việt.
2. Hướng phát triển :
Từ những hạn chế nêu trên, nhóm thực hiện đề ra những hướng phát triển trong tương lai như sau:
Chương trình sê nâng cao giao diện và phát triển các tính năng khác
Phiên bản tiếp theo sẽ hỗ trợ nhiều ngôn ngữ hơn.
TÀI LIỆU THAM KHẢO
Allaire JRUN Developer Documentation
Java by Example – Clayton Walnum
Lập trình Java thế nào? – Hoàng Ngọc Giao
Java lập trình mạng – Nguyễn Phương Lan & Hoàng Đức Hải
Các tài liệu về JSP/EJB tại website:
Lập trình ứng dụng Web với JSP/SERVLET – Nguyễn Phương Lan & Hoàng Đức Hải
Tự học Java trong 21 ngày – Laura Lemay
Tự học SQL Server 2000 trong 21 ngày
HTML Kỹ thuật tạo trang Web - Guide
Mục lục
Lời mở đầu LLlllllah 2
Chương I: Giới thiệu chung 3
I. Tổng quan khách sạn 3
II.Hiện trạng và giải pháp 8
Chương II: Lên kế hoạch 10
I. Chương trình ứng dụng 10
II. Ưu điểm hệ thống mới 10
III. Ràng buộc 11
Chương III: Nghiên cứu khả thi 12
I. Đánh giá lợi ích chi phí 12
II. Đánh giá kỹ thuật 12
Chương IV: Xác định yêu cầu hệ thống 13
I. Hệ thống hiện tại 13
II. Hệ thống mới 13
Biểu đồ phân cấp chức năng 14
Biểu đồ luồng dữ liệu mức khung cảnh 15
Biểu đồ luồng dữ liệu mức đ ỉnh 16
Chương V: Thiết kế cơ sở dữ liệu 22
Mô hình thực thể hoàn chỉnh 22
Các bảng dữ liệu 22
Biểu đồ luồng dữ liệu 26
Chương VI: Cài đặt triển khai 27
I. Cài đặt hệ thống và các chương trình ứng dụng 27
1. Cài đặt Win 2000/NT 27
2. Cài đặt JRUN 28
3. Cài đặt SQL Server 29
II. Tìm hiểu ngôn ngữ 29
1. Làm quen với JDK 29
2. Cấu trúc thư mục của JRUN 31
3. Tìm hiểu về JSP 37
III. Viết Code thử nghiệm 41
IV. Hướng dẫn sử dụng 44
Chương VII: Kết luận 52
I. Hạn chế và hướng phát triển 52
1. Kết quả 52
2. Hướng phát triển 52
II. Lời cảm ơn 53
Tài liệu tham khảo 54
Nhận xét của giáo viên 55
Các file đính kèm theo tài liệu này:
- P0036.doc