Microsoft Word Nghiên cứu công nghệ JSP & Java, xây dựng Website bán hàng cho công ty cổ phần chế biến gỗ Việt Đức Kha doc Đồ án tốt nghiệp đại học GVHD Nguyễn Đức Thuần SVTH Nguyễn Văn Ty Trang 1 LỜI[.]
Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần LỜI NÓI ĐẦU Ngày nay, Internet ngày trở nên cần thiết cho sống, đặc biệt lĩnh vực kinh doanh Thương mại điện tử ngành kinh tế thu lợi nhuận cao nhiều nước giới Mặc dù vậy, nước ta lại chưa phát triển loại hình điều kiện khách quan Tuy nhiên, sớm hay muộn chắn phải có phần đáp ứng nhu cầu khách hàng nhà thương mại Vì bn bán hoạt động thiếu đời sống nay, nhờ phát triển thương mại điện tử mà nhà thương mại có hội quảng cáo sản phẩm rộng rãi Với thương mại điện tử, khơng cịn phải đến trực tiếp cửa hàng vừa tốn thời gian, sức khỏe Giờ đây, ngồi nhà mà mua hàng Thật tuyệt vời! SVTH: Nguyễn Văn Ty Trang Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần Chính thế, em chọn đề tài “Nghiên cứu JSP Java, xây dựng website bán hàng cho Công ty Cổ Phần Chế biến gỗ Việt Đức” nhằm làm quen với thương mại điện tử bắt kịp phát triển nước ta giới Do thời gian hạn chế, việc tìm hiểu xây dựng ứng dụng công nghệ Java (một công nghệ mới) em khó khăn Dù vậy, ứng dụng triển khai phần lớn yêu cầu mà ứng dụng thương mại điện tử cần đáp ứng Em xin chân thành cảm ơn thầy Nguyễn Đức Thuần tận tình hướng dẫn, giúp em hồn thành tốt đồ án tốt nghiệp Em xin chân thành cảm ơn ! Nha Trang, tháng 08 năm 2003 SVTH : Nguyễn Văn Ty Lớp : 40TH MSSV: 8D15075 SVTH: Nguyễn Văn Ty Trang Đồ án tốt nghiệp đại học SVTH: Nguyễn Văn Ty GVHD: Nguyễn Đức Thuần Trang Đồ án tốt nghiệp đại học SVTH: Nguyễn Văn Ty GVHD: Nguyễn Đức Thuần Trang Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần PHẦN I CƠ SỞ LÝ THUYẾT Chương I YÊU CẦU CỦA ĐỀ TÀI SVTH: Nguyễn Văn Ty Trang Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần Về mặt ứng dụng Xây dựng hệ thống quản lý dịch vụ bán hàng mạng, hệ thống cho phép dịch vụ đăng ký không gian để bán mặt hàng có mạng Mỗi dịch vụ có account riêng hệ thống, họ cập nhật mặt hàng, thay đổi thông tin dịch vụ quản lý đơn đặt hàng khách mua hàng thông qua hệ thống Tuy nhiên, dịch vụ hay mặt hàng dịch vụ thực hoạt động tốn chi phí cần thiết cho hệ thống Đối với khách hàng vào hệ thống để mua hàng, hệ thống phải hỗ trợ cho khách hàng tìm kiếm, chọn đặt hàng cách dễ dàng Khi khách hàng đặt mua sản phẩm, hệ thống chuyển đơn đặt hàng đến dịch vụ bán hàng Việc giao nhận hàng diễn nội người bán với người mua, hệ thống không tham gia trực tiếp vào việc bán hàng Hệ thống đóng vai trị siêu thị ảo, môi giới cho khách mua hàng với dịch vụ Về phía khách hàng Các khách hàng đăng kí mua hàng, việc xem lựa chọn sản phẩm qua mạng họ đồng ý với sản phẩm Khách hàng dễ dàng xem hàng, đăng ký mua hàng lúc thông qua mạng máy tính mà máy chủ khởi động Các khách hàng dễ dàng tìm thấy sản phẩm mà cần, việc đăng kí mua hàng thơng qua thao tác nhấn chuột sản phẩm mà lựa chọn Các khách hàng cịn theo dõi sản phẩm mà công ty chuẩn bị bán thời gian tới Khi cần thiết khách hàng hỏi đáp thông qua công ty, thông qua diễn đàn nhằm góp ý việc thắc mắc với cơng ty Diễn đàn giúp cho khách hàng giải vấn đề mà khơng giải Về phía người quản lý Người quản lý theo dõi thành viên, đơn hàng khách hàng tham gia mua hàng cơng ty (như số lượng mặt hàng, số tiền, khách hàng …) nắm thông tin khách hàng email, địa để liên lạc cần Người quản lý thêm sản phẩm, xố sản phẩm, thêm người quản lý, người sử dụng thơng qua chương trình xây dựng Về mặt kỹ thuật Bài tốn địi hỏi hệ thống phải có khả kỹ thuật sau: Ứng dụng triển khai môi trường JSP Hỗ trợ nhiều hệ điều hành (cho phía client) Hỗ trợ nhiều trình duyệt (như IE, Netscape ) SVTH: Nguyễn Văn Ty Trang Đồ án tốt nghiệp đại học Hỗ trợ nhiều người dùng GVHD: Nguyễn Đức Thuần Số lượng người tham gia đăng ký mua hàng không giới hạn Số lượng sản phẩm, người đăng ký sử dụng thêm vào không giới hạn Một số yêu cầu khác Ngồi yêu cầu trên, ứng dụng có thể: Dễ dàng cài đặt Dễ dàng sử dụng Như vậy, trước yêu cầu tốn đặt trên, ta cần khảo sát công nghệ lựa chọn giải pháp thích hợp để triển khai ứng dụng theo yêu cầu tốn Chương II NGƠN NGỮ LẬP TRÌNH JAVA ĐỐI VỚI ỨNG DỤNG MẠNG I GIỚI THIỆU NGƠN NGỮ LẬP TRÌNH JAVA Ơng tổ Java khơng khác James Gosling, lập trình viên cơng ty Sun Microsystems Cuối năm 1990 James Gosling Sun Microsystem giao nhiệm vụ xây dựng phần mềm cho mặt hàng điện dân dụng với mục tiêu nhỏ gọn tương thích với nhiều thiết bị phần cứng khác nhau, Java đời Đầu tiên Java có tên Oak (cây sồi) có trùng tên nên Oak đổi tên thành Java Java thiết kế cho mục đích đa (khơng phụ thuộc vào hệ điều hành nào) nên chương trình Java sau biên dịch cho file nhị phân khác với file nhị phân thực thi Windows exe hay com java biên dịch mã nhị phân gọi byte-code có mở rộng class triệu gọi thực thi máy ảo SVTH: Nguyễn Văn Ty Trang Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần Java (Java Virtual Machine – JVM) Máy ảo Java thực trình thơng dịch bình thường có khả thực thi mã byte-code tương tự xử lý máy tính thực thi mã nhị phân thị mã máy Nói máy ảo Java kiến trúc xử lý thực thi chế phần mềm thay phần cứng Chính lý mà ta cần viết máy ảo Java cho hệ điều hành chương trình Java (.class) chạy hệ điều hành kiến trúc máy ảo Cha đẻ Java hãng Sun Microsystem chịu trách nhiệm xây dựng máy ảo Java cho hệ điều hành khác Nhiệm vụ lập trình viên viết chương trình mã nguồn Java sau biên dịch chương trình dạng file thực thi byte-code để chạy máy ảo Java dùng để viết chương trình ứng dụng tương tự ngơn ngữ lập trình khác Java thiên lập trình cho ứng dụng mạng Internet Ngồi ta dùng Java để viết Applet Servlet hay trang JSP thành phần ứng dụng dành cho trình duyệt Internet (browser) trình chủ (Web server) Java ngôn ngữ đơn giản, hướng đối tượng, phân tán, thông dịch mạnh mẽ, bảo mật, cấu trúc độc lập, khả chuyển, hiệu cao linh động (the Java TM Language an Overview – sun Microsystems) Đó đặc điểm quan trọng mà ngơn ngữ lập trình có Applet mẫu chương trình nhỏ nhúng chạy trình duyệt Applet giúp bạn thực nhiều tương tác bên trình duyệt Có thể nói Java đời tiếng nhờ khả viết Applet Mặc dù vậy, ngày Applet khơng cịn sử dụng nhiều trình duyệt Chúng thay ngơn ngữ kịch JavaScript Tuy nhiên nhiều điều mà Applet có khả lập trình mạnh mẽ JavaScript giao tiếp với Web server, thực hiên công việc tính tốn phức tạp, vẽ đồ thị, bảo mật… Servlet thành phần đối tượng chủ yếu phục vụ cho mục đích tích hợp chạy trình chủ Web server Servlet giúp xử lý tạo trang Web động Servlet kết hợp với trang Java Server Page - JSP trang Script chạy phía máy chủ để tạo trang Web động, tương tác với sở liệu tương tự Servlet JavaScript Java hồn tồn khác nhau, thống nghe đến tên gọi bạn nghĩ chúng xuất phát từ Java JavaScript ngôn ngữ kịch đời phát triển Nescape Communication Java phát triển Sun Mcrosystem Mặc dù vậy, ngày chúng trở nên thân thiết gần gũi với hết Java JavaScript có cú pháp lập trình giống giống với C/C++ nên thuận tiện để người dùng học hai ngôn ngữ song song với JavaScript thường dùng để kiểm sốt điều khiển hoạt động trình khách JavaScript tạo hiệu ứng động cho trang Web thay đổi màu sắc, hiển thị SVTH: Nguyễn Văn Ty Trang Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần ảnh động, tương tác với người dùng chuột, phím, kiểm tra liệu nhập vào trước gởi trình chủ để xữ lý JavaBeans thành phần đối tượng xây dựng từ ngôn ngữ Java, khối mã xây dựng sẵn dùng lại Nó trở nên ngày phổ biến ứng dụng phân tán (distributed application) mạng Java Server Page - JSP đặc biệt cung cấp cho nhà phát triển Web tảng để tạo nội dung động máy chủ sử dụng HTML XML, mã Java có tính bảo mật, nhanh, độc lập với máy chủ JSP phần mở rộng đặc biệt Java Servlet, đơn giản Servlet JSP nhúng vào trang HTML để tạo trang động từ trình chủ phục vụ cho trình khách Trên số đặc tính quan trọng nhánh phát triển ngơn ngữ Java Với đặc tính mạng mẽ vậy, Java lựa chọn tốt cho ứng dụng mạng Applet Java: Applet nói mẫu chương trình nhỏ chạy trình duyệt tương tác với trình duyệt Vì applet nói mẫu chương trình nhỏ chạy trình duyệt tương tác với trình duyệt Vì applet phải tuân thủ theo cấu trúc định để chạy trình duyệt khác Tạo applet: Khuôn mẫu applet thể bốn phương thức sau: Error! pubilc class appletName extendes Applet { public void init() {…} public void start() {…} public void stop() {…} public void destroy() {…} } Trong : appletName: tên applet Init: để khởi tạo applet applet nap (loaded) hay nạp lại (reloaded) Start: bắt đầu hoạt động applet applet nạp hay người dùng thăm lại trang chứa applet Stop: chấm dứt hoạt động applet người dùng rời khỏi trang chứa applet hay đóng trình duyệt SVTH: Nguyễn Văn Ty Trang Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần Destroy: thực việc dọn dẹp chuẩn bị cho applet hẳn (unloading) Không phải applet dùng đủ phương thức này, phương thức bị bỏ qua viết applet trình duyệt tự thực nạp applet * Vịng đời applet: Nạp applet: Khi applet nạp có kiện xảy sau: Một instance lớp applet tạo ra, có nghĩa đối tượng applet tạo Đối tượng applet tự khởi tạo mình, có nghĩa tự cài đặt, nhận giá trị (phương thức init() gọi đến) Đối tượng applet bắt đầu chạy (phương thức start() gọi) Rời khỏi hay trở trang Web:Khi người dùng sang trang (không chứa applet ta), applet thực phương thức stop() Khi người dùng trở trang chứa applet, applet lại kích hoạt phương thức start() Quá trình xảy người dùng thu nhỏ cửa sổ (minimize) mở lại (restore) Nạp lại applet:Thơng thường trình duyệt cho phép người dùng nạp lại applet, nghĩa người dùng khỏi applet lại nạp applet lại lần Vì khỏi applet phương thức stop() gọi, sau destroy gọi để thực việc dọn dẹp cho hệ thống Như applet giải phóng tất tài nguyên mà dùng Cuối applet thức bị xố bỏ khỏi nhớ Và nạp lại, trình nạp xảy y lần đầu applet nạp Thốt khỏi trình duyệt: Khi ta chưa đóng trang Web chứa applet mà khỏi trình duyệt, applet tự khởi động phương thức stop() thực phương thức dọn dẹp destroy() trước trình duyệt bị đóng JavaBeans JavaBeans Sun Microsystem phát triển dựa tản Java JavaBeans giao tiếp lập trình dùng để tạo khối mã xây dựng sẵn dùng lại Những thành phần JavaBeans nhúng vào ứng dụng, liên kết với thành phần JavaBeans khác hay dùng để kết nối với ứng dụng Bằng cách dùng thành phần JavaBeans nhà phát triển ứng dụng giảm khối lượng mã mà họ phải viết Họ tự tạo thành phần JavaBeans riêng biệt mua lại chúng từ nhà phát triển thứ ba khác Trong thời gian qua, môi trường Internet trở thành động lực cho hướng tiếp cận thành phần (component) dựa Java Nó trở nên ngày phổ biến với ứng dụng phân tán (distributed application) mạng Theo mơ hình thành phần ứng dụng chạy máy khách (client), phần chạy lớp SVTH: Nguyễn Văn Ty Trang 10 Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần Tổâng kết xử lý Các xử lý đáp ứng hoạt động khách hàng tổng kết sơ đồ bảng sau: XLKH07 XLKH06 XLKH03 XLKH04 XLKH05 XLKH08 XLKH01 XLKH02 Bảng thích khối xử lý STT KHỐI XỬ LÝ MƠ TẢ XLKH01 Tìm kiếm hàng hóa XLKH02 Lựa chọn mặt hàng hệ thống XLKH03 Liệt kê danh sách hàng chọn XLKH04 Xóa mặt hàng chọn XLKH05 Thay đổi số lượng đặt mua mặt hàng chọn XLKH06 Đặt mua mặt hàng chọn XLKH07 Đăng ký thành viên XLKH08 Kết thúc mua sắm Thiết kế sở liệu a Sơ đồ thực thể kết hợp m BANK_TYPES Bank_type_id bank- mem SVTH: Nguyễn Văn Ty ITEMS Item_id Category_id Name Producer Price Product_url Image_url Notes Is_recommended ORDERDETAILS Order_id Item_id Item_desc Quantity price Categories - item User_id Item_id Item_desc Price quantity Trang 43 Edit - items mem - sho Member_id Member_login Member_password Member_level First_name Last_name Email Phone Address Notes Bank_type_id CTDH_MH Account_number Sho - Items Orderdetails - items SHOPPINGCAR T MEMBERS CATEGORIE Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần b Thiết kế sở liệu bảng * Bảng sở liệu : Xây dựng sở liệu cho wood store bao gồm bảng sau: Editorial_categories:Bảng chứa đề mục cho trang chủ KEY COMLUMN NAME K Editorial_cat_id Editorial_cat_name Chú thích: DATATYPE LENGTH Smallint Varchar 50 Editorial_cat_id: Mã số đề mục cho trang chủ Editorial_cat_name: Tên đề mục cho trang chủ Editorials:Bảng chi tiết đề mục cho trang chủ KEY K COMLUMN NAME Article_id Editorial_cat_id Article_title Article_desc Item_id DATATYPE LENGTH Smallint Smallint Varchar Varchar Smallint 2 200 200 Chú thích: Article_id: Mã số chi tiết nội dung đề mục Editorial_cat_id: Mã số đề mục cho trang chủ Article_title: Tiêu đề chi tiết đề mục Article_desc: Nội dung chi tiết đề mục SVTH: Nguyễn Văn Ty Trang 44 Đồ án tốt nghiệp đại học Item_id: Sản phẩm mà đề mục mô tả Categories: Bảng danh mục thể loại sản phẩm KEY COMLUMN NAME DATATYPE K Category_id Smallint Name Varchar Chú thích: GVHD: Nguyễn Đức Thuần LENGTH 50 Category_id: Mã số phân loại Category_id: Tên phân loại Items: Bảng danh mục chi tiết nội dung sản phẩm KEY COMLUMN NAME K Item_id DATATYPE LENGTH Smallint Smallint Varchar Varchar Varchar Varchar Varchar Varchar smallint 50 50 50 250 100 200 Category_id Name Producer Price Product_url Image_url Notes Is_recommended Chú thích: Item_id: Mã số sản phẩm Category_id: Mã số phân loại Name: Tên sản phẩm Producer: Tên công ty sản xuất Price: Đơn giá Product_url: Đường dẫn chứa ảnh sản phẩm Notes: Giới thiệu sơ sản phẩm Is_recommended: Cờ cho phép giới thiệu với khách hàng sản phẩm trang chủ Members: Bảng danh mục chứa thông tin thành viên KEY COMLUMN NAME DATATYPE K Member_id Int Member_login Varchar Member_password Varchar SVTH: Nguyễn Văn Ty LENGTH 20 20 Trang 45 Đồ án tốt nghiệp đại học Member_level First_name Last_name Email Phone Address Notes Bank_type_id Account_number Chú thích: Smallint Varchar Varchar Varchar Varchar Varchar Varchar Smallint Varchar GVHD: Nguyễn Đức Thuần 30 30 50 50 50 200 50 Member_id: Mã số thành viên Member_login: Tên đăng nhập Member_password: Mật Member_level: Quyền đăng nhập(1-quyền User thường - quyền cho người quản trị) First_name: Họ Last_name: Tên Email: Địa Email Phone: Điện thoại Address: Địa liên lạc Notes: Ghi khác Bank_type_id: Tên ngân hàng Account_number: Số tài khoản ngân hàng Orders:bảng chứa đơn đặt hàng KEY COMLUMN NAME K Order_id Member_id Payment Shipping Orderdate Chú thích: DATATYPE Int Int Varchar Varchar Datetime LENGTH 4 50 50 Order_id: Mã số đơn hàng Member_id:Mã số thành viên Payment: Hình thức tốn SVTH: Nguyễn Văn Ty Trang 46 Đồ án tốt nghiệp đại học Shipping: Hình thức giao hàng GVHD: Nguyễn Đức Thuần Orderdate:Ngày giao hàng OrderDetails: bảng chứa chi tiết đơn hàng KEY COMLUMN NAME DATATYPE K Order_id Int Item_id Smallint Item_desc Varchar Quantity Smallint price Float Chú thích: LENGTH 50 Order_id: Mã số đơn hàng Item_id: Mã số sản phẩm Item_desc: Tên sản phẩm Quantity: Số lượng mua Price: Đơn giá Bank_types:bảng chứa loại ngân hàng KEY COMLUMN NAME DATATYPE K Bank_type_id Smallint Name Varchar Chú thích: LENGTH 50 Bank_type_id: Mã số ngân hàng Name: Tên ngân hàng ShoppingCart:bảng chứa thông tin giỏ hàng KEY COMLUMN NAME DATATYPE User_id Int Item_id Smallint Item_desc Varchar Price Float quantity Smallint Chú thích: LENGTH 50 User_id: Mã số thành viên đăng nhập Item_id: Mã số sản phẩm Item_desc:Tên sản phẩm SVTH: Nguyễn Văn Ty Trang 47 Đồ án tốt nghiệp đại học Price: Đơn giá GVHD: Nguyễn Đức Thuần Quantity: Số lượng Các trang dùng cho người quản trị 3.1 Trang AdminWoodView (Quản trị sản phẩm) Trang dùng để xem danh sách mục hàng có kho Tại nhà quản trị chọn mục thêm mới, sữa đổi xố mặt hàng có Vấn đề bảo mật trang quản trị cần phải đặt lên hàng đầu Bởi thông tin quản trị thường thông tin quan trọng, danh cho người có thẩm quyền phép sử dụng trang quản trị Vì lý này, trang quản trị ta gọi hàm checkSecurity() đầu trang Trang AdminWoodView có liên kết bản, liên kết cho phép thêm mục hàng (Add new), liên kết thứ hai cho phép hiệu chỉnh nội dung mục hàng hành (Edit) Liên kết cuối cho phép xố mục hàng khỏi danh sách (Delete) 3.2.AdminOrderView (Quản trị đơn hàng) Quản trị đơn hàng chủ yếu giúp người quản lý xem thông tin đơn hàng mà khách hàng đặt hàng qua mạng Xem thông tin mà khách hàng sở SVTH: Nguyễn Văn Ty Trang 48 Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần liệu Trang giúp cho người quản lý xem xố đơn đặt hàng bảng Orders OrderDetails 3.3.AdminMemberView (Quản trị người dùng) Ngồi việc quản lý đơn hàng, thay đổi lượng sản phẩm kho, ta cung cấp thêm trang cho phép nhà quản trị quản lý thành viên đăng ký với Web site Trang quản trị người dùng hoạt động giống với trang quản lý các, chế duyệt xem danh sách thành viên đăng ký, xố thành viên đăng ký Chương V SVTH: Nguyễn Văn Ty Trang 49 Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần XÂY DỰNG ỨNG DỤNG FORUM I DIỄN ĐÀN (FORUM) VÀ CƠ CHẾ HOẠT ĐỘNG Diễn đàn Trong ứng dụng Web Web site lớn, thường thấy góc ứng dụng mang tên diễn đàn hay cịn gọi với tên thông dụng Internet forum Diễn đàn nơi người đưa ý kiến bàn bạc thảo luận liên quan đến chủ đề Ví dụ diễn đàn giúp cho người trao đổi kinh nghiệm học hỏi lẫn nhau, … Diễn đàn nơi khách hàng trao đổi vấn đề gút mắc với công ty, người truy nhập vào mà có khả tháo gỡ gút mắc mà khách hàng yêu cầu Đây nơi trao đổi vấn đề công ty Cơ chế hoạt động Đầu tiên truy cập vào trang chủ web site trang chủ có nút Forum Ta nhấn vào nút đưa đến trang chủ diễn đàn (trang index.jsp) Nơi ta tham khảo chủ đề có thêm vào chủ đề thảo luận gọi từ topic Mỗi mục ta thêm vào gọi “tuyến” hay thread Hình 2.1 trang chủ diễn đàn Hình 2.1: Trang chủ diễn đàn Tại trang chủ, ta xếp đề mục theo chủ đề, theo tên người gửi theo ngày tháng, ta xố chủ đề Nếu muốn xem nội dung chủ đề người thảo luận trước nào, ta kích chuột vào tên chủ đề Danh sách nội dung thảo luận trang viewthread.jsp hiển thị hình 2.2 SVTH: Nguyễn Văn Ty Trang 50 Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần Hình 2.2: Trang xem nội dung chủ đề Từ trang chủ, ta chọn hyperlink New Thread để tạo mục (một chủ đề mới) hình 2.3 Hình 2.3: Tạo chủ đề Từ trang chủ, ta nhập vào chuỗi thơng tin nhấn nút Search xem có người thảo luận thơng tin mà ta cần tìm hay chưa hình 2.4 SVTH: Nguyễn Văn Ty Trang 51 Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần Hình 2.4 kết tìm kiếm chủ đề Một danh sách đề mục dài, để hiển thị, sử dụng kỹ thuật phân trang cho hiển thị đề mục trang Ta hiểu qua cách hoạt động diễn đàn II XÂY DỰNG ỨNG DỤNG FORUM Thiết kế diễn đàn 1.1 Thiết kế xử lý Các hoạt động diễn đàn chương trình bán hàng là: Liệt kê tất topic diễn đàn Tìm kiếm topic Tạo topic Trả lời topic Xố topic Tóm lại: Cơ chế diễn đàn mô tả sơ đồ sau: Xoá topic Error! Tạo topic Liệt kê tất topic Tìm kiếm topic Liệt kê tất đáp ứng XỬ LÝ: Liệt kê tất topic Trả lời topic Các topic vấn đề mà khách hàng muốn trao đổi với công ty, muốn thành viên công ty với nhằm bàn bạc vấn đề Xử lý mơ tả sau: Tiếp nhận yêu cầu liệt kê topic SVTH: Nguyễn Văn Ty Trang 52 Đồ án tốt nghiệp đại học Truy xuất sở liệu (bảng messages) GVHD: Nguyễn Đức Thuần Xuất hình topic XỬ LÝ: Tạo topic Khi cần khách hàng trao đổi vấn đề mà cần bàn bạc đến khách hàng khác mong có ý kiến trao đổi nhiều người Việc tạo topic mô tả sau: Tiếp nhận yêu cầu tạo topic Tiếp nhận nội dung việc tạo topic tên topic, người tạo topic nội dung topic Lấy max(message_id)+1 bảng messages để tạo khố cho topic Lưu vào sở liệu XỬ LÝ: Tìm kiếm theo nội dung topic Yêu cầu đặt có nhiều topic, người sử dụng muốn tìm kiếm topic có chủ đề giống chủ đề cần tìm Mơ tả việc tìm kiếm nội dung topic sau: Tiếp nhận yêu cầu tìm kiếm topic Lấy thơng tin tìm kiếm Truy xuất sở liệu có topic có chữ giống với nội dung tìm kiếm Liệt kê topic thoả yêu cầu tìm kiếm XỬ LÝ: Liệt kê tất đáp ứng cho topic Khi khách hàng thành viên công ty chọn topic để xem xét trả lời cho topic tương ứng yêu cầu cần phải thực sau: Tiếp nhận yêu cầu cần liệt kê Lấy mã số tên topic cần liệt kê (mã số = message_id) Truy xuất sở liệu tương ứng với message_id Liệt kê tất đáp ứng topic XỬ LÝ: Đáp ứng topic Mỗi khách hàng thành viên cơng ty trao đổi kinh nghiệm vấn đề mà biết cho khách hàng thành viên khác mà họ quan tâm vấn đề Các bước xử lý mơ tả sau: Tiếp nhận yêu cầu đáp ứng Lấy mã số topic cần đáp ứng Ghi nhận thông tin người đáp ứng (tên, nội dung đáp ứng) vào sở liệu XỬ LÝ: Xố topic Tiếp nhận yêu cầu xố topic SVTH: Nguyễn Văn Ty Trang 53 Đồ án tốt nghiệp đại học Lấy mã số topic cần xố GVHD: Nguyễn Đức Thuần Xố tất nội dung topic sở liệu 1.2 Thiết kế bảng liệu Xây dựng diễn đàn JSP cho Web site này, cần bảng sở liệu để lưu nội dung chủ đề bàn bạc, tên tác giả, người gửi bài, ngày tháng gởi, … trang JSP tương tác khác Messages:Bảng chứa thông tin diễn đàn KEY K COMLUMN NAME Message_id Message_parent_id Topic Author Date_entered Message Chú thích: DATATYPE Smallint Smallint Varchar Varchar Datetime Varchar LENGTH 2 50 50 300 Message_id: Khố cho đề mục Message_parent_id: Quan hệ với đề mục cha (NULL đề mục gốc) Topic: Tiêu đề cần thảo luận đề mục Author: Tên người gởi Date_entered: Ngày gởi Message: Nội dung cần thảo luận Chức trang JSP cho ứng dụng forum: bao gồm trang sau 2.1 Trang index.jsp Trước hết trang index.jsp, trang chủ ứng dụng Trong trang ta đọc từ bảng liệu message chủ đề có Hiển thị chủ đề phân trang chúng(5 mẫu tin đọc trang) Người dùng kích chuột vào liên kết Previous Next để đến trang liệu khác Ta cung cấp chế xếp liệu theo tên đề mục (topic), tên người gửi, ngày tháng gửi… Trang chủ index.jsp bao gồm thẻ trỏ đến trang search.jsp thực thao tác tìm kiếm ta nhấn vào search (submit) 2.2 Phần tiêu đề trang: file chứa hình ảnh tiêu đề logo dành cho ứng dụng xuất trang giao diện JSP khác 2.3 Trang viewthread.jsp Khi người dùng kích chuột vào hyperlink chủ đề cần thảo luận ta sử dụng trang viewthread.jsp để hiển thị chi tiết mục trả lời gởi lên SVTH: Nguyễn Văn Ty Trang 54 Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần Mỗi chủ đề cung cấp số mid (message_id) đường liên kết URL dạng query string, trang viewthread.jsp sử dụng tham số để tìm chủ đề câu trả lời liên quan (căn vào trường message_parent_id) 2.4 Trang newthread.jsp Nếu người dùng muốn tạo chủ đề mới, họ kích chuột vào mục newthread trang chủ Trang newthread.jsp hiển thị giao diện để người dùng nhập vào tên người gởi bài, tên chủ đề nội dung 2.5 Trang savethread.jsp Nhiệm vụ trang đơn giản Đầu tiên tiếp nhận liệu trang newthread.jsp gửi lên Tiếp đến, tạo khố cho mục liệu chèn vào Khố tạo cách lấy giá trị lớn trường message_id hành cộng thêm sau lệnh SQL INSERT gọi để chèn liệu vào bảng 2.6 Trang reply.jsp Trong trình xem trả lời mục thảo luận, người dùng nhấn vào nút Reply để phản hồi góp thêm ý kiến vào mục thảo luận Trang reply.jsp giống với trang newthread.jsp, nhiên trang reply.jsp liên quan đến đề mục có 2.7 Trang savereply.jsp Tương tự trang savethread.jsp trước đây, trang savereply.jsp thực chức lưu câu trả lời vào bảng liệu Tuy nhiên, câu trả lời liên quan đến đề mục có, ta lấy khố đề mục cha từ đối số gửi lên trang reply.jsp mang tên mid Sau cùng, lệnh INSERT SQL gọi để chèn liệu cho câu trả lời vào bảng liệu 2.8 Trang search.jsp Một trang web ta nhiều người sử dụng truy cập thảo luận forum, lượng đề mục số luợng câu trả lời tăng lên Chúng ta cần cung cấp chế cho phép người dùng tìm kiếm xem đề mục thảo luận trước hay chưa Trang search.jsp thực cơng việc Cơ chế hiển thị trang search.jsp giống với trang index.jsp, nhiên trang search.jsp thực chức tìm kiếm mệnh đề WHERE câu lệnh SQL dựa vào liệu từ ô nhập liệu mang tên s_topic Trang search.jsp gọi từ thuộc tính action thẻ trang index.jsp Nội dung sau SVTH: Nguyễn Văn Ty Trang 55 Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần Chương VI HẠN CHẾ – HƯỚNG CẢI TIẾN Hạn chế Như vậy, em thiết kế thành công thực mơ hình bán hàng qua mạng (thương mại điện tử) Nhưng với lượng thời gian có hạn nội dung đề tài lớn, nên hồn thiện tất chức cần thiết cho mơ hình Chính lý này, hệ thống số hạn chế định điều khó tránh khỏi Dưới số hạn chế mà xây dựng: Quá trình kiểm tra thử nghiệm hệ thống chưa ý lý khơng đủ nhân lực thời gian thực hạn hẹp Hệ thống giúp đỡ sử dụng hệ thống chưa xây dựng Hạn chế gây khó khăn nhiều cho người dùng cuối (end user) Hệ thống có cài đặt mơi trường windows, chưa có cài đặt thức, thống cho mơi trường khác Và số hạn chế khác phát sinh q trình kiểm tra beta tester Cơng cụ xây dựng cịn q đơn giản Chương trình xây dựng phức tạp nên việc cập nhật, nâng cấp chương trình khó thực Hướng cải tiến Nhìn chung, em thực xây dựng phần hệ thống Ở mức độ vừa nhỏ, hệ thống áp dụng vào thực tế Tuy nhiên, hệ thống cần có có số cải tiến sau tương lai Có thể nâng cấp cải tiến để đưa vào vận hành sử dụng Xây dựng hệ thống trợ giúp cho người sử dụng SVTH: Nguyễn Văn Ty Trang 56 Đồ án tốt nghiệp đại học GVHD: Nguyễn Đức Thuần SVTH: Nguyễn Văn Ty Trang 57