Luận văn Xây dựng cửa hàng bán linh kiện máy tính trên mạng

Ngày nay, công nghệ thông tin đã và đang dần dần chuyển hướng phát triển của mình sang các dịch vụ Web.Và một trong những dịch vụ được mọi người quan tâm nhất là Thương mại Điện tử. Dịch vụ này đã thay đổi mô hình doanh nghiệp toàn cầu và cơ cấu kinh tế một cách hoàn toàn.Vơi sự phát triển của internet đã tạo ra một chợ điện tử toàn cầu mà nó vượt xa giới hạn của không gian và thời gian.

doc92 trang | Chia sẻ: vietpd | Lượt xem: 1592 | 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 cửa hàng bán linh kiện máy tính trên mạng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CHƯƠNG 1 DẪN NHẬP Ngày nay, công nghệ thông tin đã và đang dần dần chuyển hướng phát triển của mình sang các dịch vụ Web.Và một trong những dịch vụ được mọi người quan tâm nhất là Thương mại Điện tử. Dịch vụ này đã thay đổi mô hình doanh nghiệp toàn cầu và cơ cấu kinh tế một cách hoàn toàn.Vơi sự phát triển của internet đã tạo ra một chợ điện tử toàn cầu mà nó vượt xa giới hạn của không gian và thời gian. Nhờ Thương mại Điện tử, với những thao tác đơn giản trên máy có nối mạng Internet bạn sẽ có tận tay mua những gì mình cần mà không phải đi đâu. Bạn chỉ cần click vào trang dịch vụ Thương mại Điện tử, làm theo hướng dẫn và click vào những gì bạn cần. Các nhà dịch vụ sẽ mang đến tận nhà cho bạn. Việc thanh toán cũng dễ dàng qua hệ thống ngân hàng hay trực tiếp nếu bạn muốn.Với nhịp độ phát triển như vũ bão của Internet và sự sôi động của thị trường như hiện nay, bạn không thể không ghé thăm dịch vụ Thương mại Điện tử dù chỉ là một lần. Để tiếp cận và góp phần đẩy mạnh sự phổ biến của Thương mại Điện tử ở Việt Nam, em xin trình bày “Xây dựng cửa hàng bán linh kiện máy tính trên mạng”. Đây là một dạng của chương trình ứng dụng mạng nên thường liên quan đến một máy chủ và nhiều máy khách. Do đó chúng ta phải khảo sát,chọn lựa giải pháp như thế nào để cho chương trình độc lập hơn,đáng tin cậy hơn và chương trình cũng trở nên linh động trong việc thay thế nâng cấp sau này.Bên cạnh đó chúng ta phải tìm hiểu các công nghệ giúp tạo một trang web thể hiện được giao diện nhập dữ liệu và kết quả. Đi đôi với việc khảo sát,chọn lựa giải pháp và tìm hiểu các công nghệ đó là phần phân tích và thiết kế hệ thống”xây dựng cửa hàn bán linh kiện máy tính trên mạng.Dựa trên những khảo sát thực tế ta phải thiết lập một cơ sở dữ liệu có đầy đủ các thông tin cần thiết.Và để xây dựng một cơ sở dữ liệu như thế ta trình bày ba mức tiếp cận : Mức quan niệm: xác định hệ thống có những đối tượng gì, chúng quan hệ với nhau ra sao? Mức logic: là mức đặt các đối tượng hệ thống vào một tổ chức và chúng làm bằng phương tiện nào? Mức vật lý: nhằm xác định phải làm như thế nào thì hệ thống vận hành được? Tiếp đến là hiện thực hệ thống thương mại điện tử đơn giản điển hình là “xây dựng cửa hàng bán linh kiện máy tính trên mạng”. Như vậy,ta đã có cái nhìn chung về quá trình xây dựng hệ thống thương mại điện tử trong luận văn này.Và để hiểu rõ chi tiết hơn chúng hãy lần lượt đi vào các chương sau. Luận văn này gồm bốn chương: Chương 1: Dẫn nhập _ Giới thiệu tổng quan về quá trình xây dựng hệ thống bán hàng qua mạng Chương 2: Khảo sát lựa chọn giải pháp và tìm hiểu công nghệ JavaServlet,JSP,JavaBean _ Là quá trình khảo sát chọn lựa giải pháp và tìm hiểu các công nghệ được ứng dụng trong quá trình xây dựng và pháp triển hệ thống bán hàng này. Chương 3: Phân tích và hiện thực cửa hàng bán linh kiện máy tính trên mạng. _ Trong chương này luận văn sẽ trình bày tiến trình phân tích,thiết kế và hiện thực hệ thống “xây dựng cửa hàng bán linh kiện máy tính trên mạng? Chương 4: Kết luận và hướng phát triển CHƯƠNG 2 KHẢO SÁT,CHỌN LỰA GIẢI PHÁP VÀ TÌM HIỂU CÁC CÔNG NGHỆ 2.1 KHẢO SÁT VÀ CHỌN LỰA GIẢI PHÁP _ Hệ thống “ xây dựng cửa hàng bán hàng trên mạng” là một chương trình ứng dụng mạng. Để xây dựng được hệ thống cần phải nghiên cứu, khảo sát các công nghệ lập trình mạng, từ đó có một lựa chọn giải pháp tốt nhất thỏa mãn các yêu cầu của đề tài. _ Lập trình mạng thường liên quan đến một máy chủ và một hay nhiều máy khách.Máy khách gởi yêu cầu đến máy chủ và máy chủ hồi đáp yêu cầu. Máy khách bắt đầu bằng cách cố thiết lập nối kết với máy chủ. Máy chủ có thể chấp nhận hay từ chối kết nối. Máy chủ phải đang chạy khi máy khách khởi động. Máy chủ chờ nối kết từ máy khách. Có các câu lệnh cần để tạo máy chủ và máy khách cũng như để chúng trao dữ liệu với nhau. Các máy giao tiếp với nhau là dựa theo quy ước hay giao thức cốt lõi TCP/IP (Trasmission Control Protocol / Internet Protocol). ư MÔ HÌNH GIỮA CÁC MÁY 1- Khảo sát mô hình a-Mô hình khách / chủ Một mô hình như đã trình bày ở trên được gọi là mô hình khách/ chủ. Lập trình mạng ngày càng trở nên phức tạp. Mô hình lập trình đơn lẻ truyền thống đã bị thay đổi rất nhiều. Ngày nay, bạn không còn đơn thuần ngồi viết những ứng dụng để chạy trên một máy duy nhất. Chương trình ứng dụng đòi hỏi sự tương tác từ nhiều phía người dùng, chia sẻ tài nguyên, triệu gọi từ xa, liên kết giao tác, phân tán dữ liệu … Với những yêu cầu trên mô hình khách/ chủ đã ra đời và tồn đến ngày nay. Theo mô hình khách / chủ tất cả các thao tác xử lý phức tạp đều được chuyển giao cho máy chủ xử lý. Máy khách chỉ đóng vai trò gửi yêu cầu và hiển thị dữ liệu. Điển hình của mô hình này là các ứng dụng cơ sở dữ liệu. Máy khách là trình ứng dụng có khả năng kết nối và truy vấn dữ liệu từ một máy chủ ở xa . Mô hình máy khách /máy chủ ngày càng bị quá tải bởi độ phức tạp và nhu cầu của người dùng. Nếu quản lý và phân phối ứng dụng đến 100 máy khách nằm ở nhiều quốc gia khác nhau, điều này gây trở ngại về mặt địa lý. Việc cài đặt trình điều khiển kết nối cơ sở dữ liệu MS SQL Server lên từng máy là mất nhiều công sức, đó là chưa kể khi muốn chuyển hệ cơ sở dữ liệu MS SQL Server sang hệ Oracle và thay cấu hình và kết nối với từng hệ cơ sở dữ liệu xem ra thật khó khăn. Hay khi bạn muốn thay đổi mã nguồn của ứng dụng khách. Nếu ứng dụng khách là bao gồm nhiều tập tin thực thi .exe và các thư viện liên kết động (dll ) lên đến hàng chục MB, thì bạn phải gửi bản cập nhật hàng chục MB này đến 100 máy khách yêu cầu cập nhật lại chương trình. Mô hình phát triển ứng dụng đa tầng sẽ giúp giải quyết điều này . Các ứng dụng xử lý của bạn không cài đặt trên máy khách nữa mà cài đặt trên ở một máy chủ khác . Nhờ vậy mà máy khách trở nên gọn nhẹ , dễ cấu hình , dễ thay đổi phía máy chủ . Nếu muốn thay đổi mã nguồn của trình ứng dụng, bạn chỉ cần thay đổi trên một máy chủ. Có thể nói mô hình máy khách/máy chủ là mô hình có ảnh hưởng nhất đến công nghệ thông tin. Thật vậy, mô hình khách/chủ đã giúp phát triển một phương thức phát triển ứng dụng mới là việc phân chia ứng dụng thành nhiều lớp thực hiện những chức năng chuyên biệt. Một ứng dụng thông thường được chia làm 3 tầng: Giao diện (Presentation logic): lớp này là cấu nối giữa người dùng với ứng dụng, cung cấp những chức năng của ứng dụng cho người dùng và nhận những lệnh từ người dùng cho ứng dụng. Lớp này được thiết kế sao cho càng thân thiện với người dùng càng tốt.Chức năng (tạm dịch từ Business logic): đây là phần lõi của một chương trình, cung cấp tất cả những chức năng có thể có của chương trình cho lớp giao diện bên trên. Cơ Sở Dữ Liệu (Data Access logic): lớp này là Cơ Sở Dữ Liệu của ứng dụng, cung cấp khả năng truy xuất đến Cơ Sở Dữ Liệu cho lớp chức năng nếu cần. Việc phân chia ứng dụng thành nhiều lớp còn giúp cho ứng dụng trở nên dễ dàng thay đổi, cập nhật và đáng tin cậy hơn. Ứng dụng đầu tiên của mô hình khách/chủ là ứng dụng chia xẻ tập tin (do các tổ chức có nhu cầu chia xẻ thông tin giữa các bộ phận trong tổ chức được dễ dàng và nhanh chóng hơn). Trong ứng dụng này, thông tin được chứa trong các tập tin và được đặt tại một máy chủ của một phòng ban. Khi một phòng ban khác có nhu cầu trao đổi thông tin với phòng ban này thì sẽ sử dụng một máy khách kết nối với máy chủ và tải những thông tin cần thiết về. Mô hình khách/ chủ được chia thành các mô hình : Mô hình 2 lớp (2 – tier), mô hình 3 lớp ( 3-tier) hay còn gọi là mô hình nhiều lớp (n-tier). b - Mô hình 2 lớp Mô hình 2 lớp là một sự phát triển từ ứng dụng chia xẻ tập tin ở trên. Trong ứng dụng chia xẻ tập tin, ta thay thế tập tin của máy chủ bằng một hệ thống quản trị Cơ Sở Dữ Liệu (DBMS). Khi máy khách cần thông tin từ Cơ Sở Dữ Liệu, nó sẽ yêu cầu DBMS thông qua mạng máy tính giữa các phòng ban. DBMS xử lý yêu cầu và sau đó trả về cho máy khách những thông tin yêu cầu. Ưu điểm của mô hình hai mức so với ứng dụng chia xẻ tập tin là làm giảm bớt được lưu thông trên mạng. Ở ứng dụng chia xẻ tập tin, đơn vị truyền nhận giữa máy khách và máy chủ là 1 tập tin, do đó khi máy khách yêu cầu thông tin từ máy chủ thì máy chủ sẽ trả về cho máy khách toàn bộ một tập tin có chứa thông tin đó. Trong khi ở mô hình hai mức thì máy chủ có thể trả về cho máy khách đúng những gì mà máy khách yêu cầu với đơn vị truyền nhận có thể tính bằng byte. Ngoài ra, hiện nay các DBMS còn cung cấp nhiều khả năng khác như hỗ trợ giao dịch, cho phép nhiều người dùng cùng thao tác trên Cơ Sở Dữ Liệu cùng lúc mà vẫn đảm bảo được tính toàn vẹn của dữ liệu. Mô hình 2 lớp được chia làm 2 loại: Tính toán tập trung ở máy khách ( thường gọi là fat client – thin server): ở loại này, phía máy khách phải đảm nhận cả 2 tầng là giao diện và chức năng, còn máy chủ chỉ làm nhiệm vụ của tầng Cơ Sở Dữ Liệu. Database Server DBMS l data access logic l presentation logic l business logic Ưu điểm của mô hình loại này là đơn giản, thích hợp cho các ứng dụng nhỏ và vừa. Tuy nhiên nó cũng có một số nhược điểm: Do phần tính toán nghiêng về phía máy khách nhiều nên đòi hỏi máy khách phải có cấu hình đủ mạnh. Cũng do phần lõi (chức năng) của chương trình nằm ở phía máy khách nên khi chương trình cần nâng cấp thì sẽ rất khó khăn vì phải cập nhật lại chương trình nằm ở toàn bộ các máy khách. Do mọi thao tác trên Cơ Sở Dữ Liệu đều thông qua mạng giữa máy khách và máy chủ nên tốc độ của chương trình sẽ chậm đi. Tính toán tập trung ở máy chủ (fat server – thin client): ở loại này, máy khách chỉ đảm nhiệm phần giao diện còn máy chủ thực hiện chức năng của tầng chức năng và tầng Cơ Sở Dữ Liệu. Database Server DBMS Stored Procedure l business logic l data access logic l presentation logic Ngược lại với loại fat client – thin server thì loại này có ưu điểm là giảm sự lưu thông trên mạng và tốc độ nhanh hơn do lớp chức năng của chương trình nằm ở máy chủ cùng với Cơ Sở Dữ Liệu(CSDL), do đó mọi thao tác với CSDL của chương trình đều được thực hiện ngay trên máy chủ và thông tin lưu thông trên mạng chỉ là những kết quả được trả về cho người dùng sau khi được tính toán. Mặt khác, do phần lõi của chương trình được đặt tập trung tại máy chủ nên việc cập nhật chương trình sẽ dễ dàng hơn. Tuy nhiên, do công việc được tập trung quá nhiều tại máy chủ nên đòi hỏi cấu hình máy chủ phải đủ mạnh, đặc biệt là khi có nhiều máy khách cùng truy xuất tới máy chủ cùng lúc. c- Mô hình 3 lớp Trong mô hình 3 lớp, tầng chức năng của chương trình được tách ra thành một lớp tạo thành 3 lớp riêng biệt. Việc tách lớp này làm cho các phần của chương trình độc lập hơn, đáng tin cậy hơn, chương trình trở nên linh động hơn trong việc thay thế, nâng cấp và do đó mô hình này rất thích hợp với những ứng dụng có yêu cầu thay đổi thường xuyên như ứng dụng web. Database Server DBMS Stored Procedure l data access logic l presentation logic Application Server l business logic 2 Lựa chọn mô hình “Hệ thống quản lý các dịch vụ bán hàng trên mạng” sẽ được trình bày theo mô hình 3 lớp. Mô hình 3 lớp thuận tiện cho việc thiết kế , làm cho hệ thống hoạt động dễ dàng và dễ thay đổi , nâng cấp theo yêu cầu đề tài. Mô hình 3 lớp thường được dùng phổ biến trong các chương trình ứng dụng mạng. Việc gửi yêu cầu và thể hiện dữ liệu là do phải trình bày giao diện sao cho dễ dàng cho người dùng là lớp 1 ,thường gọi là client tier . Chức năng xử lý các thao tác là nằm ở lớp 2 , gọi là Application Server tier. Dữ liệu được lưu trữ ở lớp 3 , gọi là Data Server tier. Client tier Application Server tier Data Ở mỗi lớp có các công nghệ kỹ thuật tương ứng để thiết kế giao diện cũng như thực hiện các chức nãng chuyên biệt . 2.2 TÌM HIỂU CÁC CÔNG NGHỆ HỖ TRỢ CHO MÔ HÌNH ư Khảo sát công nghệ 1.> Lớp 1 (Client tier) Ở máy khách có cài đặt trình duyệt Web ( Web browser ) dùng để truy tìm và đọc các trang Web trên mạng. Địa chỉ trang Web sẽ được các trình duyệt gửi đến máy chủ và máy chủ sẽ gửi trả về nội dung trang Web bao gồm các dữ liệu như văn bản, hình ảnh, âm thanh … Trình duyệt sẽ chịu trách nhiệm trình bày kết quả trang Web ra màn hình với những dữ liệu nhận được này . Các trình duyệt thường được sử dụng hiện nay là : Internet Explorer của Microsoft , Netscape Navigator của Netscape Communication . Một máy có thể sử dụng cả hai hay nhiều trình duyệt để gửi và nhận dữ liệu . Trên client có thể sử dụng các công nghệ như : HTML (HyperText Marked Language ) /XML để tạo trangweb tĩnh . JavaScript. JScript. VBScript . ASP , JSP. Công nghệ thành phần  : ActiveX . Java Applet. 2.> - Lớp 2 (Server tier) HTTP Server : Jrun . Apache . Web Logic . Web Sphere . Java Web Server . IIS . Personal Web Manager. Trang Web động : Các công nghệ trên chỉ là giúp tạo một trang Web thể hiện được giao diện để nhập dữ liệu và thể hiện kết quả trả về theo giao thức HTTP. Còn thực chất việc nhận dữ liệu gửi đi và nhận dữ liệu về là có sự trợ giúp của : Công nghệ CGI (Common Gate Interface ) . ASP (Actuve Server Page) của Microsoft. Java Servlet . JSP(Java Server Page ) của Sun MicroSystems . Component Model & Object Request Broker : CORBA . COM /MTS. EJB / Java RMI . JavaBean 3.> - Lớp 3 (Data tier) Lớp này có thể sử dụng các hệ quản trị cơ sở dữ liệu như : Oracle . DB2. SQL Server …. ư LỰA CHỌN CÔNG NGHỆ VÀ PHẦN MỀM : Sau thời gian khảo sát các công nghệ có thể dùng để thiết kế và căn cứ vào yêu cầu của đề tài , điều kiện về phần mềm em quyết định lựa chọn ngôn ngữ lập trình mạng Java các công nghệ mà Java cung cấp sau tương ứng với mô hình 3 lớp đã chọn ở trên 1- Lớp 1 (client tier) Các máy khách sẽ sử dụng 2 trình duyệt Internet Explorer (IE ) và Netscape . Do vậy , đề tài sẽ phải sử dụng ngôn ngữ trình bày trang Web là HTML ( HyperText Markup Language ) , Java Script , Java Applet . Vì các công nghệ này cho phép trang Web hoạt động trên cả IE và Netscape .Trong khi JScript , VBScript, ActiveXControl chỉ có tác dụng trên IE . Một công nghệ nữa trợ giúp phát triển trang Web linh động là JSP vì JSP là một cách đơn giản để người dùng ( nhất là lập trình viên không chuyên ) tiếp cận được hướng lập trình Web phía máy chủ hiệu quả và nhanh hơn . Hơn nữa JSP xét về mặt tốc độ nhanh hơn các trang web thực hiện diễn dịch theo cơ chế khác ( sẽ trình bày sau ở phần các công nghệ sử dụng trong đề tài ). 2- Lớp 2 (server tier ) Do yêu cầu đề tài là ứng dụng có thể chạy trên nhiều hệ điều hành nên kỹ thuật hỗ trợ cho lớp này sẽ là : JSP ,JavaBean , JDBC , JDBC – ODBC Bridge ( do một số thành phần dữ liệu của Microsoft không cho phép dùng kỹ thuật JDBC ). Đối với Web Server , thì công nghệ JRun đem lại nhiều hiệu quả cũng như các công nghệ khác như Web Logic, Apache, Web Sphere nhưng vì hiện tại em đang có trong tay các tài liệu cũng như phiên bản JRun , nên đề tài này sẽ sử dụng phần mềm này. JRun sẽ hỗ trợ cho Servlet engine và JavaBean. Để hỗ trợ cho việc truy xuất dữ liệu từ lớp 3 , đề tài sử dụng kỹ thuật JDBC và JDBC-ODBC Bridge . 3 -Lớp 3 (data tier ) Dữ liệu ở lớp này được xây dựng trên mô hình dữ liệu quan hệ và được lưu trữ quản lý dưới sự trợ giúp của hệ quản trị cơ sở dữ liệu SQL Server . Như vậy đề tài này sử dụng ngôn ngữ lập trình Java để thiết kế “Hệ thống vụ bán hàng trên mạng” .Tiêu chuẩn để phát triển ứng dụng trên Web dựa vào Java 2 platform Enterprise Edition (J2EE) . Một trong những công cụ hỗ trợ lập trình là JRun .JRun cung cấp mô hình ứng dụng J2EE và môi trường để thi hành ứng dụng J2EE . Mô hình 3 lớp mà J2EE hỗ trợ có những đặc tính sau : Client tier : Ở lớp này , máy khách sử dụng trình duyệt để truy cập vào Middle tier qua kết nối HTTP như Internet .Lớp này bao gồm bất cứ Applet nào chạy trên máy khách . Server tier : Là chức năng của trang Web . Lớp này bao gồm cả phần giao diện và các quy định về chức năng để tạo một trang Web . JRun được dùng để thi hành các ứng dụng ở lớp này . Data tier : Lớp này là kho lưu trữ dữ liệu Xí nghiệp có chứa đựng những dữ liệu về chức năng của trang Web . Java hỗ trợ cho người lập trình 3 kiến trúc của mô hình 3 lớp , đó là: Kiến trúc thứ 1: HTML Servlet , JSP Cơ sở dữ liệu Internet JDBC Client tier Server tier Data tier Kiến trúc thứ 2: HTML, Jscript, JSP, Java Applet Servlet , Java JSP Bean Bean Bean Cơ sở dữ liệu Internet JDBC Client tier Server tier Data tier Kiến trúc thứ 3: HTML, Jscript, JSP, Java Applet Servlet , JSP, EJB EJB JavaBean Cơ sở dữ liệu Internet JDBC Client tier Server tier Data tier Độ phức tạp , tính linh hoạt của mỗi kiến trúc được biễu diễn : Tính linh hoạt Kiến trúc thứ 3 cao Kiến trúc thứ 2 Độphức tạp Kiến trúc thứ 1 thấp dễ khó Kiến trúc thứ 3 dễ dàng thay đổi,nâng cấp khi cần thiết nhưng độ phức tạp cao.Còn kiến trúc thứ 1 thì lại khó khăn khi chúng ta cần thay đổi hay nâng cấp.Vì vậy đề tài sử dụng kiến trúc thứ 2 để thiết kế hệ thống . Mô hình 3 lớp này mang lại nhiều thuận lợi cho các nhà phát triển trang Web : Các lớp, thậm chí các thành phần cấu thành của lớp có thể được phân phối vào hệ thống phần cứng phức tạp để cải thiện sự hoạt động và tính có thể biến đổi của hệ thống . Lớp Middle tier làm cho máy khách không gặp khó khăn khi truy xuất vào kho dữ liệu Xí nghiệp . Giao diện lập trình ứng dụng (API ) Java Servlet định nghĩa các ứng dụng Web (Web Applications) gồm có Java servlet , trang JSP (Java Server Page) ,HTML …. JRun làm cho máy chủ Web có thể thực thi các ứng dụng Web . JavaBean đưa ra giải