Đề tài Nghiên cứu JSP và Java, xây dựng website bán hàng cho Công ty Cổ Phần Chế biến gỗ Việt Đức

LỜI NÓI ĐẦU 1

Chương I 3

YÊU CẦU CỦA ĐỀ TÀI 3

1. Về mặt ứng dụng. 3

2. Về mặt kỹ thuật 4

3. Một số yêu cầu khác 4

Chương II 5

NGÔN NGỮ LẬP TRÌNH JAVA ĐỐI VỚI 5

I. GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH JAVA. 5

2. JavaBeans. 9

* Xử lý tình huống của thành phần JavaBeans: 13

3. Java Script. 15

3.1. JavaScript là gì? 15

3.2. Cú pháp JavaScript: 16

II. JAVA SERVER PAGE – JSP. 17

2. Các đối tượng của JSP: 19

3. Các hành động của JSP: 23

4. JDBC và ODBC (Java Database Connectivity và Open Database Connectivity). 26

Chương III 31

ĐẶC TẢ TÍNH NĂNG 31

I. QUẢN TRỊ HỆ THỐNG 31

II. KHÁCH MUA HÀNG. 32

III. DIỄN ĐÀN (FORUM). 32

Chương IV 34

XÂY DỰNG ỨNG DỤNG WOOD STORE 34

I. HOẠT ĐỘNG VÀ LƯU ĐỒ CỦA ỨNG DỤNG. 34

1. Hoạt động của ứng dụng. 34

2. Các lưu đồ hoạt động của website. 41

II. XÂY DỰNG ỨNG DỤNG WOOD STORE 46

1. Thiết kế xử lý. 46

1.1.1. Phân tích các hành động. 47

1.1.2. Thiết kế xử lý. 47

a. Quản lý khách hàng. 47

b. Quản lý sản phẩm: 49

Tổng kết các xử lý 51

a. Tìm hàng. 52

XỬ LÝ: Tìm hàng (XLKH01) 53

b. Chọn hàng. 53

XỬ LÝ: Chọn hàng (XLKH02) 53

c. Liệt kê hàng chọn. 53

XỬ LÝ: Liệt kê hàng chọn (XLKH03) 53

d. Xóa hàng chọn. 54

XỬ LÝ: Xóa hàng chọn (XLKH04) 54

e. Cập nhật hàng chọn. 54

XỬ LÝ: Cập nhật mặt hàng (XLKH05) 54

f. Đăng ký mua hàng. 54

XỬ LÝ: Đăng ký mua hàng (XLKH06) 55

Tổâng kết xử lý 55

2. Thiết kế cơ sở dữ liệu. 56

KEY 58

KEY 58

KEY 59

KEY 59

KEY 60

KEY 61

KEY 61

KEY 62

KEY 62

3. Các trang dùng cho người quản trị. 63

Chương V 66

XÂY DỰNG ỨNG DỤNG FORUM 66

I. DIỄN ĐÀN (FORUM) VÀ CƠ CHẾ HOẠT ĐỘNG. 66

1. Diễn đàn. 66

2. Cơ chế hoạt động. 66

II. XÂY DỰNG ỨNG DỤNG FORUM. 69

1. Thiết kế diễn đàn. 69

KEY 72

2. Chức năng các trang JSP cho ứng dụng forum: bao gồm các trang sau. 72

Chương VI 75

1. Hạn chế 75

2. Hướng cải tiến 75

 

 

doc79 trang | Chia sẻ: huong.duong | Lượt xem: 2399 | Lượt tải: 4download
Bạn đang xem trước 20 trang tài liệu Đề tài Nghiên cứu JSP và Java, xây dựng website bán hàng cho Công ty Cổ Phần Chế biến gỗ Việt Đức, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ửi về máy khách. Thẻ HTML và mã Java có thể trộn lẫn lộn với nhau. Ví dụ: <% out.println(“Chao Ban”) %> 1.2. Hiển thị kết xuất bằng cú pháp Thay vì sử dụng cú pháp để diễn đạt một khối gồm nhiều lệnh ta có thể sử dụng cú pháp chỉ để hiển thị kết xuất của một giá trị biến hay hàm nào đó. Ví dụ: Name Search Trong ví dụ trên name là biến chứa tên topic mà ta cần tìm, search là một hàm trả về tên tìm được. Chú ý, không có dấu (;) ở cuối các biến hoặc biểu thức gọi hàm trong cú pháp . Bởi vì nội dung của biểu thức nằm trong sẽ được chuyển thành lệnh out.println() tương đương như sau: out.println (“<html”); out.println (“Name”+ name); out.println(“</html”); 1.3. Chèn chú thích vào mã trang JSP. Cũng như Java, JSP cho phép ta dùng cú pháp // để chú thích một dòng mã lệnh trong khi cú pháp /* */ áp dụng cho nhiều dòng. Các dòng lệnh chú thích này sẽ được bỏ qua khi trình chủ diễn dịch trang JSP. // đây là chú thích một dòng /* Chú thích nhiều dòng */ JSP còn cung cấp thêm cho ta cú pháp chú thích . Tất cả các khối lệnh Java và HTML nằm giữa hai dấu chú thích này sẽ được trình biên dịch trang bỏ qua không quan tâm đến. Ví dụ: <%-- out.println (“ Đoạn này trình biên dịch sẽ bỏ qua”) --%> Dấu chú thích này rất có hiệu quả. Nó giúp ta tạm thời cô lập hoặc che bỏ tác dụng của một đoạn mã Java nào đó đang bị lỗi trong trang JSP. Ta chỉ tạm thời làm mất tác dụng của chúng chứ không cần xoá bỏ. 1.4. Khai báo phương thức và biến hằng Một cú pháp nữa mà JSP cung cấp đó là . Cú pháp này cho phép ta định nghĩa một hoặc nhiều phương thức và biến. Phương thức và biến sau đó có thể được triệu gọi bất kỳ nơi đâu trong trang JSP. 2. Các đối tượng của JSP: Trong JSP chúng ta có thể truy cập một số đối tượng của JSP mà không cần phải khai báo. Trình dịch JSP sẽ nhận dạng những đối tượng này và dịch sang trang Servlet. 2.1. Đối tượng Request: Đối tượng Request đại diện cho đối tượng javax.servlet.http.HttpServletRequest. Giao diện HttpServlet được định nghĩa như một đối tượng truy cập đến thông tin header của giao thức HTTP được gởi về trình khách. Đối tượng request thường được truyền như đối số cho phương thức service(), ví dụ: public void jspService (HttpServletRequest request, HttpServiceResponse response) throws IOException, Servlet ( ) Một trong những ứng dụng thông thường nhất của đối tượng request là nắm giữ các tham số. Chúng ta có thể thấy điều này bằng cách gọi phương thức getParameter() của request. Phương thức này thừa kế từ lớp cha là javax.ServletRequest. Phương thức này nhận tên tham số và trả về giá trị chuỗi tương ứng với tên của tham số đó. Phương thức getParameter() sẽ trả về giá trị của tham số mà nó giữ, nếu tham số này là null, nó sẽ trả về giá trị null. Ngoài ra, vì đối tượng request đại diện cho đối tượng javax.servlet.http.HttpServletRequest nên có thể sử dụng các phương thức của javax.servlet.http.HttpServletRequest trên request như getSession(), getCookies(), getRemoteUser()… 2.2. Đối tượng Response: Một đối tượng khác của JSP là đối tượng response. Đối tượng response cho phép phản hồi thông tin xử lý từ trình chủ trở về trình duyệt. Hầu hết ứng dụng thông thường của đối tượng response là dùng để xuất HTML ra trình duyệt. Đối tượng response thường gọi phương thức getWriter() để thực hiện kết xuất. Các phương thức mà đối tượng respons thường sử dụng được liệt kê như sau: response.sendRedirect(java.lang.String location): gởi đối tượng response một lần nữa đến một trang JSP được chỉ định trong đối số của phương thức. response.setContenType(java.lang.String type): Định dạng nội dung xuất là kiểu type - đối số của phương thức. 2.3. Đối tượng Session: Đối tượng session tham chiếu đến đối tượng javax.servlet.http.HttpSession. Đối tượng session dùng để lưu các đối tượng khác từ những yêu cầu của client. Chúng đưa ra hầu hết trạng thái đầy đủ của HTTP. Đối tượng session được khởi tạo bằng cách gọi phương thức pageContext.getSession() để tạo ra trang servlet. Cú pháp như sau: session = pageContext.getSession() Khi cần một biến nào đó có giá trị toàn cục từ khi mở cho đến khi kết thúc trình duyệt, ta chọn đối tượng session. Đối tượng session sẽ tạo biến cục bộ cho phép lưu một giá trị nào đó từ trang JSP này đến trang JSP khác trong suốt phiên làm việc của chúng ta. Để đối tượng session có thể lưu giữ những biến của chương trình ta cần phải khai báo như sau: session.setAttribute(java.lang.String name, java.lang.Object value) Trong đó name là tên biến value là giá trị của biến. Khi cần truy xuất một biến nào đó của đối tượng session ta cần phải sử dụng phương thức getAtribute() như sau: name chính là tên của biến mà ta cần truy xuất. session. getAttribute(java.lang.String name) 2.4. Đối tượng Application: application = pageContext.getServletContext(); Đối tượng application tham chiếu đến javax.servlet.ServletContext cho phép lưu giữ cấu hình toàn cục của Servlet và JSP. Cách đối tượng application khởi tạo như sau: Trong đó pageContext là một đối tượng JspFactory. Đối tượng application có phạm vi hoạt động ở cấp ứng dụng, nghĩa là có thể giữ giá trị của tất cả các trang JSP ở những session khác nhau cho tới khi JSP engine bị đóng lại. Tương tự như session, ta có thể gọi phương thức application.setAtribute() để lấy về giá trị lưu giữ trong application. Phương thức application.setAtribute() được dùng để đặt trị cho biến cần chứa trong application. 2.5. Đối tượng Out: Đối tượng out đùng để ghi kết xuất gởi về trình duyệt. Đối tượng out hình thành từ lớp java.io.Writer. Ví dụ: out.print(“Hello world!”); dùng để ghi câu “Hello world!” lên trình duyệt của máy khách. 2.6. Đối tượng Config: config = pageContext.getservletconfig(): Đối tượng config tượng trưng cho lớp ServletConfig, nó được định nghĩa là đối tượng tạo bởi servlet chứa các thông tin cấu hình của servlet. Với thông tin cấu hình này servlet sẽ truy cập đối tượng ServletContext. Phương thức khởi dựng như sau: pageContext là một đối tượng JspFactory. Trong nhiều trường hợp ta không cần phải sử dụng đối tượng config. Truy cập đến ServletContext thông qua đối tượng application cũng đạt được kết quả tương tự. 2.7. Đối tượng Exception: Đối tượng Exception chỉ tồn tại trong trang xử lý lỗi (error page). Nó dùng để tham chiếu đến nguyên nhân gây ra lỗi mà trang xử lý lỗi có liên quan. Lỗi có thể xuất hiện trong quá trình hoạt động của trang JSP ở hai giai đoạn: giai đoạn thứ nhất lỗi thường phát sinh ở bước khởi tạo. Ở bước này trang JSP nhận yêu cầu từ trình khách và chuẩn bị thực thi, tuy nhiên trước khi thực thi trang JSP cần được dịch ra mã .class của Java và quá trình dịch có thể sinh lỗi. Lỗi ở bước này còn gọi là lỗi thời điểm dịch (translation time error). Giai đoạn thứ hai, trang JSP có thể phát sinh lỗi trong quá trình phản hồi các yêu cầu xử lý. Lỗi này được gọi là lỗi thời điểm yêu cầu (request time error). Kiểu lỗi JSP thứ nhất có thể xuất hiện khi trang JSP lần đầu tiên được triệu gọi. Trang JSP sẽ đi qua quá trình biên dịch từ tâïp tin nguồn .jsp thành mã Java .java sau đó được biên dịch thành đối tượng servlet ở mã byte-code là tập tin .class. Lỗi ở giai đoạn này thường do quá trình biên dịch thất bại hoặc do lỗi cú pháp khi thông dịch từ JSP sang mã nguồn Java. Lỗi này thường được báo với trạng thái mã lỗi là 500 hoặc trình chủ Web có thể thông báo những mã lỗi biên dịch của riêng Java. Lỗi tại thời điểm dịch thường được quản lý bởi bộ thông dịch JSP (JSP engine). Kiểu lỗi thứ hai của trang JSP liên quan đến quá trình xử lý các yêu cầu (request). Những lỗi này còn được xem là lỗi lúc thực thi (runtime error). Chúng có thể xuất hiên bên trong nội dung trang JSP hoặc xuất phát từ lời gọi phương thức nào đó của một đối tượng. Thường đối với kiểu lỗi này ngoại lệ (excepton) sẽ được phát sinh. Các ngoại lệ có thể bị đón bắt và xử lý bởi các đoạn mã JSP thích hợp (thường là trong khối lệnh try{} catch (Exception){}). Tuy nhiên đối với những ngoại lệ phát sinh nhưng không được người ta viết trang JSP đón bắt xử lý thích hợp thì ngoại lệ và lỗi sẽ được gởi đến bộ xử lý lỗi của trình biên dịch JSP. Bản thân trình biên dịch JSP sẽ sinh ra trang thông báo mô tả cụ thể lỗi trả về cho trình khách. Ta có thể hoàn toàn đón bắt và thay thế những trang thông báo lỗi này sử dụng đối tượng exception. Để tạo ra trang thông báo lỗi ta cần khai báo như sau: //Chỉ thị trang JSP hiện hành là trang xử lý lỗi //hiển thị nội dung thông báo lỗi phát sinh Error: has been reported. 3. Các hành động của JSP: Hành động trong JSP là quá trình trừu tượng hoá việc thực thi hay yêu cầu JSP thực hiện một nhiệm vụ nào đó. a. Hành động : Hành động được dùng để cung cấp và tạo các giá trị cho các tham số theo dạng name/value. thường dùng chung với các hành động , , . Cú pháp của hành động được mô tả như sau: Name: thuộc tính này trình bày tên của thông số tham chiếu. Value: thuộc tính này trình bày giá trị của tên được tham chiếu. b. Hành động : Hành động cung cấp cấu trúc cho sự phối hợp tài nguyên tĩnh và hành động của trang JSP hiện tại. Cú pháp của hành động này như sau: Page: thuộc tính này trình bày quan hệ đường dẫn của tập tin ta muốn include. Flush: thuộc tính này trình bày giá trị Boolean là true hay false. Cú pháp đầu tiên mô tả yêu cầu nhúng (include) tập tin cần đưa vào trang JSP. Cú pháp thứ hai chứa đựng phần tử con param được dùng để làm tham số cho mục đích include. c. Hành động : Hành động cho phép trình dịch JSP gởi đi tại thời điểm thực thi một yêu cầu hiện hành đến tài nguyên tĩnh, servlet, hay trang JSP khác. Khi hành động này thực thi nó sẽ kết thúc trang hiện tại. Hành động có thể chứa hành động . Những thuộc tính này cung cấp các giá trị cho thông số yêu cầu dùng cho việc chuyển hướng. Cú pháp của hành động được mô tả như sau: Page: thuộc tính này diễn tả quan hệ URL của đích mà hành động sẽ chuyển đến. Hành động thường được dùng như một điều kiện trong JSP để chuyển hướng xử lý. d. Hành động : Hành động cho phép JSP tạo trang HTML chứa đựng tính hợp lệ của cấu trúc trình duyệt máy khách, ví dụ như đối tượng Object hay đối tượng nhúng (Embed). Hành động tạo một thẻ hay đưa ra dòng xuất của đối tượng response. Cú pháp của hành động như sau: . . . Thuộc tính của hành động cho phép cấu hình dữ liệu để thể hiện phần tử đó. Type: thuộc tính này thể hiện loại plugin cần đưa vào. Ta có thể dùng applet làm một thành phần nhúng. Code: thuộc tính này cho biết tên của lớp (class) sẽ được nhúng. Codebase: thuộc tính này là tham chiếu cơ sở hay đường dẫn liên hệ đến tập tin plugin .class. 4. JDBC và ODBC (Java Database Connectivity và Open Database Connectivity). 4.1. JDBC. JDBC (Java Database Connectivity) là giao thức của Java dùng để thực hiện câu lệnh SQL. JDBC cung cấp tập hợp các lớp và giao diện cho phép phát triển các ứng dụng Java và ứng dụng Web liên quan đến truy xuất cơ sở dữ liệu. Tương tác căn bản nhất của của JDBC được liệt kê như sau: Mở một kết nối với cơ sở dữ liệu (Open connection). Thực thi các câu lệnh SQL (Execute SQL). Xử lý dữ liệu (Process results). Đóng kết nối (Close connnection). Đoạn mã sau đây sẽ diễn giải từng bước cách thực hiện kết nối với cơ sở dữ liệu bằng JDBC: // Bước 1. Khai báo biến Connection cn; Statement stat; ResultSet rs; // Mở kết nối cơ sở dữ liệu ODBC với tên nguồn dữ liệu (datasource name)Woodstore thông qua ODBC static final String DBDriver ="sun.jdbc.odbc.JdbcOdbcDriver"; static final String strConn ="jdbc:odbc:woodstore"; // Bước 2. Tham chiếu đến đối tượng cơ sở dữ liệu stat = conn.createStatement(); // Bước 3. Thực hiện câu lệnh SQL sSQL = "select * from items where " + sWhere; // Bước 4 Xử lý dữ liệu While (rs.next() ){ … }// Kết thúc vòng While //Bước 4. Đóng kết nối rs.close(); stat.close(); con.close(); 4.2. ODBC Open Database Connectivity (ODBC) là một trong những kỹ thuật giao tiếp cơ sở dữ liệu kiểu cũ được Microsoft cung cấp. Nó chính là bậc tiền bối của ADO. Một trong những lý do chính của Microsoft khi giới thiệu kỹ thuật này là cho phép lập trình viên có một phương pháp dễ dàng đễ truy cập nội dung của các cơ sở dữ liệu không thuộc về một định dạng quen thuộc đối với lập trình viên. Nói cách khác, ta không cần biết đến ngôn ngữ lập trình Xbase vẫn có thể truy cập đến một file DBF hay Access Basic để lấy dữ liệu trong một file MDB. Vì SQL là ngôn ngữ không thân thiện lắm đối với người sử dụng nên ta phải sử dụng qua một công cụ trung gian đóng vai trò thiết kế để thể hiện các câu lệnh của SQL cho người sử dụng dễ thao tác hơn, công cụ đó chính là JRUN, để JRUN có thể truy xuất các tập tin MDF của SQL ta phải sử dụng cầu nối ODBC. Ta có thể thấy rằng ODBC làm việc như phần ruột của WINDOWS, nó sẽ sử dụng các trình điều khiển trong các DLL để thi hành công việc. ODBC có hai tập hợp các trình điều khiển: một tập hợp sử dụng tiếng nói của trình quản lí cơ sở dữ liệu và tập kia cung cấp phương pháp giao tiếp thông thường cho ngôn ngữ lập trình. Sự kết hợp của hai tập thông qua một giao diện chấp nhận được cho phép JRUN truy cập nội dung của cơ sở dữ liệu bằng cách sử dụng một tập hàm chuẩn các hàm gọi. Dĩ nhiên có nhiều kiểu tiện ích DLL đi kèm với ODBC. Ví dụ như một trong các DLL sẽ cho phép ta làm chủ nguồn dữ liệu ODBC. Còn giao diện chủ cho ODBC có trog file CPL (bảng điều khiển) ở thư mục SYSTEM . ODBC đưa ra đảm bảo rằng có thể cung cấp được phương pháp để lấy nội dung trong cơ sở dữ liệu mà không có vấn đề gì. Mặc dù trong một số trường hợp, nó không cung cấp được cách tốt nhất để có thể chuyển đổi dữ liệu giữa trình quản lí cơ sở dữ liệu và JRUN, nhưng nói chung là tốt. Chỉ có một điều duy nhất cần chú ý là tốc độ thi hành của nó rất chậm. Nhưng các phiên bản mới của ODBC đã có những cải tiến đáng kể về tốc độ. Do đó ngày nay nó đã được đánh giá khả quan hơn nhiều. Hầu như công việc lập trình ứng dụng mà JSP và servlet thường thực hiện nhất đó là lưu trữ và truy xuất cơ sở dữ liệu.Việc truy xuất cơ sở dữ liệu trong JSP và servlet dựa vào trình truy xuất ODBC theo chuẩn java. PHẦN II CÀI ĐẶT ỨNG DỤNG Chương III ĐẶC TẢ TÍNH NĂNG Dựa vào yêu cầu của bài toán, ta nhận thấy hệ thống xây dựng phục vụ chủ yếu cho ba vấn đề sau: * Quản trị hệ thống. * Diễn đàn (forum). * Khách mua hàng. I. QUẢN TRỊ HỆ THỐNG Quản trị hệ thống là người làm chủ ứng dụng, họ có quyền kiểm soát mọi hoạt động của hệ thống. Mỗi quản trị hệ thống sẽ được cấp một username và password, để thực hiện những chức năng của mình, họ phải đăng nhập vào hệ thống bằng username và password của họ. Nếu như quá trình đăng nhập thành công thì quản trị hệ thống có những chức năng sau: * Chức năng của quản trị đối với quản trị: Thay đổi những thông tin của quản trị. Thêm quản trị. Xóa bỏ quản trị. * Chức năng của quản trị đối với sản phẩm: Thêm sản phẩm mới. Xóa sản phẩm. Cập nhật lại sản phẩm. Hiển thị các sản phẩm, hay xóa sản phẩm khi hết hạn sử dụng. * Chức năng của quản trị đối với đơn đặt hàng: Hiển thị đơn đặt hàng. Xóa đơn đặt hàng. * Chức năng của quản trị đối với khách hàng: Thêm khách hàng mới. Thay đổi thông tin khách hàng. Xoá bỏ khách hàng. II. KHÁCH MUA HÀNG. Khách mua hàng là những người vào hệ thống để tìm kiếm các mặt hàng cần mua và đặt hàng với hệ thống. Khách mua hàng có thể tìm hàng mình cần theo: Tên mặt hàng (có thể là một ký tự, chữ, câu….). Tên loại hàng. Khách hàng có thể thêm bớt những sản phẩm mình muốn hay không muốn mua vào trong hay ra khỏi giỏ hàng của mình. Sau khi tìm được hàng mình cần, họ đặt mua hàng với hệ thống. Hệ thống sẽ chuyển đơn đặt hàng của họ cho dịch vụ mà họ đặt mua. III. DIỄN ĐÀN (FORUM). Diễn đàn sẽ giúp khách hàng, cũng như những người trong công ty trao đổi, học hỏi những kinh nghiệm lẫn nhau. Chức năng của diễn đàn: Liệt kê tất cả các topic. Xem nội dung một topic. Trả lời một topic. Xoá một topic. Chương IV XÂY DỰNG ỨNG DỤNG WOOD STORE I. HOẠT ĐỘNG VÀ LƯU ĐỒ CỦA ỨNG DỤNG. 1. Hoạt động của ứng dụng. Một ứng dụng e_commerce đơn giản là web site cung cấp thông tin để khách hàng có thể liên lạc và biết rõ về sản phẩm và những dịch vụ mà công ty đưa ra. Tiếp đến khách hàng có thể đặt mua, thanh toán và hẹn ngày giao hàng hay nhận sự hổ trợ về dịch vụ từ nhà cung cấp. Tất cả các dịch vụ nêu trên đều diễn ra trên mạng và kiểm soát bởi ứng dụng web này. Hai hình thức cơ bản diễn ra trên mạng và kiểm soát bởi ứng dụng thương mại điện tử ngày nay là B2B (Business to Business) còn gọi là từ doanh nghiệp đến doanh nghiệp, và B2C (Business to Customer) còn gọi là từ doanh nghiệp đến người tiêu dùng. Ứng dụng Wood Store của ta là một Web site hổ trợ việc bán các sản phẩm gỗ trên mạng. Từ trang chủ này, người dùng có thể tìm kiếm, xem các sản phẩm trong tuần, duyệt theo các thể loại sản phẩm khác nhau. Ngoài ra khách hàng còn có thể đăng ký thành viên trong web site, tham dự diễn đàn (forum). Đầu tiên khách hàng có thể tham khảo công ty qua trang giới thiệu. Trang này sẽ gới thiệu cho ta biết về công, và những điều cần biết. Hình3.1: Trang giới thiệu về công ty Cụ thể, khi người dùng kích chuột vào một sản phẩm, họ có thể biết được tên, giá cả, những chú ý khác về sản phẩm,… Hình3.2: Trang chủ Hình3.3: Trang chi tiết sản phẩm Nếu muốn mua sản phẩm đó, khách hàng bấm nút Add to Shopping Cart. Sản phẩm cần mua sẽ được đưa vào giỏ hàng. Giỏ hàng là nơi chứa danh sách các mục hàng mà người dùng chon mua trong quá trình duyệt Web site. Người dùng có thể thay đổi số lượng mua, thêm bớt các mục hàng tại đây hoặc quay trở lại chọn các mục hàng khác. Một khi đã quyết định mua, khách hàng bấm vào nút nhấn Check Out để đi đến trang xác nhận thanh toán. Hình3.4: Trang giỏ hàng Lúc này, khách hàng thấy rõ tổng số tiền cần phải trả, số mặt hàng cần mua cùng với số lượng, đơn giá cụ thể. Mục đích để người dùng kiểm tra lại lần cuối những mặt hàng mình đã chọn. Nếu đồng ý mua hàng, người dùng bấm vào nút Order Now. Trang điền các thông tin về giao hàng và thanh toán sẽ xuất hiện (Hình Creater Order). Tại đây nhiệm vụ của khách hàng là cung cấp thêm các thông tin để tạo đơn hàng. Những thông tin này bao gồm: loại hình thanh toán (bằng tiền mặt, bằng credit card, sec), cách thức giao hàng, địa chỉ liên lạc,… sau cùng khách hàng nhấn vào nút Save Order để tạo đơn đặt hàng và hoàn tất quá trình giao dịch. Web site của ta sẽ lưu đơn hàng vào cơ sở dữ liệu, tạo mã số đơn hàng và thông báo đến khách hàng giao dịch đã hoàn tất. Hình 3.5: Trang check out Hình3.6: Trang creater Order Để hổ trợ khách hàng trong quá trình mua sắm trên mạng ta cung cấp thêm cơ chế tìm kiếm trên Web site. Từ trangchủ, nếu nhập vào một tên sản phẩm nào đó và nhấn nút search, danh mục các sản phẩm có trong danh sách sản phẩm sẽ hiển thị theo mong muốn của khách hàng. Hình 3.7: Trang tìm kiếm(Search) Ngoài việc tìm kiếm theo tên sản phẩm, để tạo thuận tiện cho người dùng ta bố trí thêm trang thực hiện tìm kiếm những yêu cầu cao hơn (để đến với trang này người dùng kích chuột vào liên kết Advance Search của trang chủ). Trang tìm kiếm Advance Search cho phép tìm mục hàng hay tên sản phẩm, tên công ty sản xuất, giá cao nhất và giá thấp nhất… Hình3.8: Trang tìm kiếm yêu cầu cao hơn (AdvancedSearch) Ngoài ra, người dùng có thể chọn mục Registration từ trang chủ để đăng ký làm thành viên của Web site. Trang đăng ký sẽ nhập đầy đủ những thông tin cần thiết giúp người dùng tận dụng những Web site forum, … Đăng ký làm thành viên cũng là yêu cầu bắt buộc nếu như khách hàng đó thực hiện mua hàng trên Web site. Những thông tin này được Web site lưu trữ để liên lạc với khách hàng. Hỗ trợ các dịch vụ hậu mãi cho khách hàng sau này. Vì những thông tin đăng ký sẽ được sử dụng về sau nên bạn phải nhập chính xác thông tin này. Nếu nhập sai bạn sẽ được yêu cầu nhập lại các trường thông tin không hợp lệ. Hình 3.9: Trang đăng ký (Registration) Người dùng trước khi lướt qua Web có thể chọn mục Sign In từ trang chủ để đăng nhập vào Web site. Nếu khách hàng đăng ký làm thành viên của Web site bạn sẽ được cấp một tài khoản đăng nhập (gồm Username/password). ta sử dụng tài khoản này để đăng nhập vào hệ thống. Lưu đồ hoạt động của ứng dụng. 2. Các lưu đồ hoạt động của website. a. Lưu đồ hoạt động của web site phục vụ khách hàng và người quản trị. Trang chủ (Home page) Các dịch vụ forum,… Xem nội dung chi tiết một sản phẩm Chọn sản phẩm cần mua thêm vào danh mục giỏ hàng (Shopping Cart) Xác nhận việc mua hàng (Check out) Đặt hàng Thành Viên? Quản trị Đăng nhập (login) Lưu đơn hàng và hẹn ngày giao hàng Tìm kiếm Yes No Sản phẩm Đăng ký b. sơ đồ phân rã các chức năng của ứng dụng. SƠ ĐỒ PHÂN RÃ CÁC CHỨC NĂNG Cập nhật Sản phẩm Cập nhật khách hàng Liệt kê đơn hàng Xem thông tin đơn đặt hàng Đặt mua Đăng ký thành viên Phản hồi-ý kiến Xem và chọn hàng ADMIN FORUM KHÁCH HÀNG Cập nhật đơn hàng Xoá đơn hàng Thêm mới Sản phẩm Chỉnh sửa Sản phẩm Xoá bỏ Sản phẩm Thêm mới Khách hàng Chỉnh sửa Khách hàng Xoá bỏ Khách hàng Liệt kê diễn đàn Tạo mới một diễn đàn Xem nội dung diễn đàn Trả lời một diễn đàn Xoá một diễn đàn Không tồn tại Tồn tại Bắt đầu mua hàng Màn hình giao tác Kết thúc Chọn hàng hóa Đặt hàng Đăng ký thành viên Kết thúc Xác nhận đơn hàng Mở table members Kiểm tra người dùng ? Tìm kiếm hàng hóa c. Lưu đồ mua hàng trên mạng d. Lưu đồ xử lý kiểm tra khách hàng mua hàng : Có Không Yêu cầu nhập username-password TB khách hàng đăng nhập hoàn thành Lưu giữ mã ID khách hàng Mua hàng Kết thúc Mở table members Kiểm tra có tồn tại? Bắt đầu đăng nhập Kiểm tra khách hàng có tồn tại ? Yêu cầu nhập thông tin khách hàng mới e. Lưu đồ xử lý kiểm tra người quản trị. Có Không Yêu cầu nhập username-password TB quản trị đăng nhập hoàn thành Lưu giữ mã ID quản trị Thao tác của người quản trị Kết thúc Mở table members Kiểm tra có tồn tại? Bắt đầu đăng nhập Kiểm tra quản trị có tồn tại ? Yêu cầu nhập lại II. XÂY DỰNG ỨNG DỤNG WOOD STORE 1. Thiết kế xử lý. 1.1. Thiết kế xử lý cho người quản lý. 1.1.1. Phân tích các hành động. Để thiết kế các xử lý phục vụ cho người quản lý, ta cần phân tích kỹ các hoạt động của người quản lý để có thể thực hiện trong thực tế. Và từ sự phân tích này ta sẽ có những xử lý thích hợp cho hệ thống. Các hành động của một công ty trong thực tế để theo dõi quá trình mua bán hàng hóa sẽ được mô tả bằng bảng sau: Các hành động của người quản lý trong thực tế được mô tả bằng bảng sau: STT HOẠT ĐỘNG MÔ TẢ 1 Quản lý khách hàng Quản lý những khách hàng 2 Quản lý đơn hàng Quản lý các đơn hàng của khách hàng 3 Quản lý sản phẩm Cập nhật(thêm, xoá, sửa) các sản phẩm 1.1.2. Thiết kế xử lý. a. Quản lý khách hàng. Thay đổi thông tin về khách hàng: Hoạt động này được người quản lý thực hiện nhằm thay đổi thông tin của khách hàng như password, họ, tên, email, địa chỉ… Thêm một khách hàng. Xoá một khách hàng Một người quản lý có thể xoá bỏ một khách hàng nếu khách hàng đó không đủ những thông tin cần thiết, hoặc khách hàng đó không tuân thủ những qui định của công ty. Liệt kê danh sách khách hàng Thay đổi thông tin khách hàng Thêm khách hàng vào hệ thống Xóa khách hàng khỏi hệ thống Tóm lại: các hoạt động mà người quản lý có thể tương tác với server để quản lý khách hàng được mô tả bằng sơ đồ sau: Như vậy cần thiết kế các khối xử lý sau để đáp ứng các hành động của khách hàng. XỬ LÝ: Liệt kê danh sách khách hàng(XLKH01) Xử lý này được mô tả như sau: Tiếp nhận yêu cầu liệt kê danh sách khách hàng . Lấy danh sách khách hàng từ cơ sở dữ liệu . Đưa ra danh sách khách hàng . XỬ LÝ: Thay đổi thông tin của khách hàng(XLKH02) Xử lý này được mô tả như sau: Tiếp nhận yêu cầu thay đổi thông tin. Lấy các thông tin cần thay đổi. Cập nhật thông tin thay đổi vào cơ sở dữ liệu. Thông báo quá trình thay đổi thành công. XỬ LÝ: Thêm khách hàng(XLKH03) Xử lý này được mô tả như sau: Tiếp nhận đăng ký của khách hàng. Yêu cầu các thông tin về khách hàng cần thêm. Kiểm tra các thông tin cần thêm vào xem có phù hợp không. Nếu hợp lệ thì tiếp tục, ngược lại báo không hợp lệ và quay lại bước hai của khối xử lý này. Ghi nhận thông tin của khách hàng vừa thêm vào cơ sở dữ liệu. Thông báo quá trình đăng ký thành công. XỬ LÝ: Xoá khách hàng(XLKH04) Xử lý này được mô tả như sau : Tiếp nhận yêu cầu xoá khách hàng. Lấy danh sách khách hàng cần xoá. Xoá khách hàng khỏi cơ sở dữ liệu. b. Quản lý sản phẩm: Thay đổi thông tin sản phẩm . Thêm sản phẩm. Xoá một sản phẩm: khi một sản phẩm nào đó mà người quản lý thấy cần phải xoá đi. Tóm lại: Các hoạt động mà người quản lý tương tác với Server để quản lý sản phẩm được mô tả bằng sơ đồ sau: Liệt kê các sản phẩm Thay đổi thông tin sản phẩm Thêm một sản phẩm Xoá một sản phẩm Như vậy các khối xử lý cần thiết để đáp ứng các hành động của người quản lý trong lĩnh vực sản phẩm như sau: XỬ LÝ: Liệt kê danh sách các sản phẩm (XLSP01) Tiếp nhận yêu cầu liệt kê danh sách sản phẩm . Lấy danh sách các sản phẩm từ cơ sở dữ liệu Đưa ra danh sách các sản ph

Các file đính kèm theo tài liệu này:

  • docLV2157.doc