Tải bản đầy đủ (.doc) (114 trang)

Đồ án tốt nghiệp Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.7 MB, 114 trang )

Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1. Định hướng đề tài
Tìm hiểu mô hình thương mại điện tử B2C và xây dựng một giải pháp
quản lý hàng hóa và bán hàng trực tuyến sử dụng Struts và Hibernate
Framework.
2. Các nhiệm vụ cụ thể của ĐATN
• Tìm hiểu về thương mại điện tử, đặc biệt là thương mại điện tử B2C
• Tìm hiểu thực trạng thương mại điện tử Việt Nam.
• Tìm giải pháp cho vấn đề an toàn trong thương mại điện tử
• Tìm hiểu Struts và Hibernate Framework.
• Thiết kế và xây dựng một phần ứng dụng web-based sử dụng Struts và
Hibernate Framework cho phép người bán hàng có thể quản lý loại
hàng hóa bất kỳ và giúp người mua có thể mua hàng hóa và thanh toán
trực tuyến.
3. Lời cam đoan của sinh viên
Tôi – Phan Vũ Giáp – cam kết ĐATN là công trình nghiên cứu của bản thân
tôi dưới sự hướng dẫn của Th.S.Bùi Thị Hòa
Các kết quả nêu trong ĐATN là trung thực, không sao chép toàn văn của bất
kỳ công trình nào khác.
Hà Nội, ngày 26 tháng 5 năm 2007
Tác giả ĐATN
Phan Vũ Giáp
4. Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của ĐATN và
cho bảo vệ.
Phan Vũ Giáp. CNPM - K47
1
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP


Thương mại điện tử đang có những bước phát triển vượt bậc trên Thế giới cũng như ở
Việt Nam trong thời gian gần đây. Đây là lĩnh vực kinh tế có gắn bó mật thiết với công
nghệ thông tin vì tất cả các sản phẩm hàng hóa và dịch vụ được trao đổi buôn bán thông
qua hạ tầng công nghệ thông tin, viễn thông, đặc biệt là Internet.
Do đây là một lĩnh vực nghiên cứu rất rộng nên trong đồ án này, tác giả chỉ tập trung
vào nghiên cứu bộ phận rất nhỏ trong lĩnh vực hấp dẫn này, đó là lĩnh vực thương mại
điện tử B2C. Thương mại điện tử B2C dường như là một mô hình tối ưu cho các doanh
nghiệp nhỏ ở các nước đang phát triển như Việt Nam có thể áp dụng để giảm chi phí bán
hàng nhằm mang lại lợi thế cạnh tranh cho sản phẩm hàng hóa, dịch vụ của họ.
Trong đồ án tốt nghiệp này, tác giả sẽ tập trung vào bộ giải pháp cho ứng dụng B2C,
hay nói một cách rõ ràng hơn, là bộ giải pháp cho phép người bán quản lý công việc bán
hàng của mình trên Internet.
Vấn đề đầu tiên gặp phải trong ứng dụng B2C là vấn đề an toàn thông tin. Tác giả đưa
ra giải pháp về an toàn cho ứng dụng B2C dựa trên các giao thức bào mật SSL, giao thức
bảo mật giao dịch thanh toán SET, các kỹ thuật điều khiển truy cập (Access Control),
chứng thực, mã hóa.
Vấn đề lớn tiếp theo gây khó khăn trong việc phát triển các ứng dụng loại này là với
mỗi loại hàng hóa khác nhau, luôn có các đặc tính khác nhau, và như thế, để thống nhất
chúng trong một gian hàng trực tuyến là rất khó khăn. Tác giả tập trung vào tìm hiểu giải
pháp cho một ứng dụng trên nền Web cho phép người bán có thể tự quản lý hàng hóa của
mình một cách uyển chuyển nhất, tức là họ thích bán gì tùy ý, đồng thời đưa ra các giải
pháp hỗ trợ người mua có được thuận lợi khi mua hàng và thực hiện thanh toán trực tuyến
bằng các phương tiện thanh toán điện tử như thẻ tín dụng.
Tác giả cũng áp dụng trong đồ án tốt nghiệp hai khung làm việc thông dụng trong việc
xây dựng các ứng dụng Web là Struts và Hibernate Framework.
Phần cuối cùng của đồ án, tác giả sẽ đưa ra một số đánh giá về kết quả đã đạt được
cũng như hạn chế của đồ án đồng thời đề xuất các hướng phát triển trong tương lai.
Từ khóa: thương mại điện tử, thương mại điện tử B2C, hệ thống thanh toán điện tử,
Struts Framework, Hibernate Framework, kho hàng trực tuyến, phương tiện thanh toán
điện tử

Phan Vũ Giáp. CNPM - K47
2
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
ABSTRACT OF THE THESIS
In the recent year, the e-commerce is developing very strongly all over the world and
Viet Nam. Because of the way goods and services are exchanged through infrastructure of
information technology and communication, this area of economic has a very close relation
to information technology, especially Internet.
The e-commerce is a very wide area, so in this thesis, the author concentrated just on
one part of this attractive area, that’s B2C e-commerce. The author chose B2C because this
model is very suitable for the bussiness in developing countries like Viet Nam to have
capability of competition at the age of globalization.
In this thesis, the author proposed and built some solutions of B2C e-commerce
application. More clearly, the author will build a web-based application that allows
merchant to do business online. It means, merchant can sell goods and services for
customers and get funds from them.
The first problem need to be solved is the problem of information security. The author
proposed some solutions to gurantee the security of B2C application based on Secure
Socket Layer Protocol, Secure Electronic Transaction Protocol, Access Control
Mechanisms, Encrytion Mechanisms and Authentication Mechanism.
The next problem that makes everyone difficutl to develop this kind of application is
the difference of each different goods need to be showed on the same place. The author
will give some solutions to help merchants manage their goods easily and help customers
get advantage of shopping and paying online.
The author also applied two popular framework in developing web-based application
are Struts and Hibernate to implement solutions in thesis.
The last part of the thesis, the author gave some estimations about the result of the
thesis and proposed some orientation to develop, extend in future.
Key words: e-commerce, B2C, electronic payment system, Struts Framework,

Hibernate Framework, online store, electronic payment instrument.
Phan Vũ Giáp. CNPM - K47
3
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
LỜI CẢM ƠN
Trước tiên em xin tỏ lòng biết ơn sâu sắc đến ThS. Bùi Thị Hòa, giảng viên bộ
môn Công nghệ Phần mềm, khoa Công nghệ Thông tin, trường đại học Bách Khoa
Hà Nội. Cô là người trực tiếp hướng dẫn em thực hiện đề tài này, cũng là người tận
tình chỉ bảo, động viên em trong suốt quá trình thực tập và khi làm đồ án tốt
nghiệp.
Em chân thành cảm ơn TS. Huỳnh Quyết Thắng , Ths. Đỗ Văn Uy, ThS.
Lương Mạnh Bá, ThS Vũ Đức Vượng đã hướng dẫn, giúp đỡ, động viên em rất
nhiều trong suốt quá học tập tại khoa công nghệ thông tin, thực tập tại bộ môn công
nghệ phần mềm và thực tập tốt nghiệp tại công ty Mitani.
Em gửi lời cảm ơn sâu sắc tới các thầy cô giáo trong khoa Công nghệ thông tin
và trường đại học Bách Khoa Hà Nội đã giúp đỡ và dạy dỗ em trong suốt thời gian
em học tập tại trường.
Em gửi lời cảm ơn chân thành tới các anh, các chị trong công ty AIT Mitani;
anh Chính, chị Hồng, chị Duyên, anh Thiện, anh Trang, anh Đạm, anh Đông, anh
Văn, anh Quân, anh Việt, anh Lý; những người đã giúp đỡ em rất nhiều trong suốt
quá trình em thực tập tốt nghiệp tại công ty.
Cuối cùng, em gửi lời cảm ơn chân thành tới gia đình, bạn bè đã quan tâm,
động viên, đóng góp ý kiến và giúp đỡ em trong suốt quá trình học tập cũng như
thực hiện đồ án tốt nghiệp này.
Do thời gian, kiến thức và kinh nghiệm của em còn hạn chế nên đồ án chắc
chắn có những khiếm khuyết, em mong được các thầy cô, anh chị và các bạn góp ý
để đồ án được hoàn thiện hơn.
Sinh viên
Phan Vũ Giáp

Phan Vũ Giáp. CNPM - K47
4
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
MỤC LỤC
PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP 1
TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP 2
ABSTRACT OF THE THESIS 3
LỜI CẢM ƠN 4
DANH MỤC TỪ VIẾT TẮT VÀ THUẬT NGỮ 7
DANH MỤC HÌNH VẼ 9
DANH MỤC BẢNG VÀ HỘP 11
LỜI NÓI ĐẦU 13
Chương 1 MÔ HÌNH THƯƠNG MẠI ĐIỆN TỬ B2C 15
Khái niệm và phân loại thương mại điện tử 15
Mô hình thương mại điện tử B2C 15
Các hệ thống thanh toán điện tử 16
1.1.1 Hệ thống thanh toán điện tử 16
1.1.2 Các kiểu hệ thống thanh toán điện tử 17
1.1.3 Các phương tiện thanh toán điện tử và cách thức giao dịch tương
ứng 18
Hệ thống bán hàng (Store-Front) 21
1.1.4 Cửa hàng trưng bày sản phẩm 22
1.1.5 Giỏ hàng 22
1.1.6 Bàn thanh toán 22
1.1.7 Các dịch vụ khách hàng và chính sách của công ty 23
Hệ thống quản lý hàng hóa và kinh doanh (Back-End) 23
1.1.8 Quản lý kho hàng 23
1.1.9 Quản lý đơn hàng 23
1.1.10 Quản lý quan hệ khách hàng (Customer Relationship

Management-CRM) 23
1.1.11 Phân tích dữ liệu khách hàng 24
Kết chương 24
Chương 2 GIẢI PHÁP AN TOÀN THÔNG TIN CHO ỨNG DỤNG
THƯƠNG MẠI ĐIỆN TỬ 25
Tổng quan về an toàn thông tin 25
2.1.1 Quy trình xây dựng hệ thống an toàn 25
2.1.2 Các đe dọa về an toàn thông tin 26
2.1.3 Các dịch vụ bảo mật 26
2.1.4 Các kỹ thuật bảo mật 27
An toàn thông tin trong thương mại điện tử 28
2.1.5 Các dịch vụ bảo mật trong thương mại điện tử 29
2.1.6 Bảo mật giao dịch thanh toán điện tử 30
Lựa chọn giải pháp an toàn cho ứng dụng B2C 37
Kết chương 38
Chương 3 THỰC TRẠNG THƯƠNG MẠI ĐIỆN TỬ VIỆT NAM 39
Môi trường phát triển thương mại điển tử Việt Nam 39
3.1.1 Nhận thức của xã hội về thương mại điện tử 39
Phan Vũ Giáp. CNPM - K47
5
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
3.1.2 Chính sách và pháp luật cho thương mại điện tử 40
3.1.3 Đáp ứng về cơ sở hạ tầng công nghệ 43
3.1.4 Hệ thống thanh toán điện tử ở Việt Nam 46
3.1.5 Đáp ứng về nguồn nhân lực 47
Tình hình ứng dụng thương mại điện tử trong doanh nghiệp 50
3.1.6 Mức độ sẵn sàng của doanh nghiệp cho thương mại điện tử 50
3.1.7 Mức độ triển khai ứng dụng thương mại điện tử 53
3.1.8 Hiệu quả ứng dụng thương mại điện tử 55

Các vấn đề cần giải quyết để phát triển thương mại điện tử Việt
Nam 56
3.1.9 Các trở ngại trong ứng dụng thương mại điện tử 56
3.1.10 Các giải pháp đề xuất 57
Kết chương 58
Chương 4 GIỚI THIỆU VỀ STRUTS VÀ HIBERNATE FRAMEWORK
59
Struts Framework 59
4.1.1 Mô hình thiết kế ba lớp MVC (Model-View-Controller) 59
4.1.2 Struts Framework 60
Hibernate Framework 63
4.1.3 Ánh xạ quan hệ đối tượng (Object-Relation Mapping) 63
4.1.4 Hibernate Framework 69
Kết hợp của Struts và Hibernate theo mô hình MVC 72
Kết chương 73
Chương 5 XÂY DỰNG ỨNG DỤNG BÁN HÀNG TRỰC TUYẾN 74
Giới thiệu yêu cầu bài toán 74
Phân tích hệ thống 75
5.1.1 Phân tích hệ thống về chức năng 75
5.1.2 Phân tích hệ thống về tương tác 82
Thiết kế 90
5.1.3 Biểu đồ lớp của các chức năng cơ bản 91
Thiết kế cơ sở dữ liệu 92
5.1.4 Thiết kế giao diện 105
Cài đặt chương trình 105
5.1.5 Công cụ sử dụng 105
5.1.6 Cấu trúc mã nguồn chương trình 105
5.1.7 Một số màn hình thực hiện chương trình 106
Kết chương 109
ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 110

Các vấn đề đồ án đã giải quyết được 110
Các vấn đề còn hạn chế 110
Hướng phát triển của đề tài 111
TÀI LIỆU THAM KHẢO 113
Các tài liệu điện tử 113
Các địa chỉ Website 113
Phan Vũ Giáp. CNPM - K47
6
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
DANH MỤC TỪ VIẾT TẮT VÀ THUẬT NGỮ
STT Thuật ngữ Giải thích
1
E-Commerce Thương mại điện tử
2
Merchant
Là các thành phần kinh doanh hàng hoá và dịch vụ
có ký kết với Ngân hàng thanh toán về việc chấp
nhận thanh toán thẻ như: nhà hàng, khách sạn, cửa
hàng Các đơn vị này phải trang bị máy móc kỹ
thuật để tiếp nhận thẻ thanh toán tiền mua hàng
hoá, dịch vụ, trả nợ thay cho tiền mặt.
3
Acquirer Bank Ngân hàng thụ hưởng
4
Issuer Bank Ngân hàng phát hành phương tiện thanh toán
5
Cardholder Chủ thẻ.
6
Credit limit (Hạn

mức tín dụng)
Được hiểu là tổng số tín dụng tối đa mà Ngân
hàng phát hành thẻ cấp cho chủ thẻ sử dụng đối
với từng loại thẻ.
7
Merchant Account
Là một tài khoản ngân hàng đặc biệt cho phép cho
phép người bán khi kinh doanh có thể chấp nhận
thanh toán bằng thẻ tín dụng. Việc thanh toán
bằng thẻ tín dụng chỉ có thể tiến hành thông qua
dạng tài khoản này.
8
Payment Gateway
“Cổng thanh toán”, là một chương trình phần
mềm. Phần mềm này được sử dụng để cấp phép
thanh toán cho các phương tiện thanh toán. Nó là
kênh trung gian liên kết tất cả các bên tham gia
trong giao dịch thanh toán điện tử.
9
ACH (Automated
Clearing House) – Hệ
thống thanh toán tự
động
Là nơi để chuyển tiền gửi cho tài khoản cá nhân
và chuyển giao thanh toán giữa các cơ quan
thương mại.
10
EDI
Electronic Data Interchanger-Trao đổi dữ liệu điện
tử tài chính

11
Store-Front Cửa hàng trên mạng
12
Back-End
Hệ thống quản lý hàng hóa và kinh doanh của
người bán
13
IP (Intellectual
property)
Quyền sở hữu sáng tạo
14
Digital Signature Chữ ký số
15
Certificates Giấy chứng thực
16
CA (Certificate
Authority)
Cơ quan chứng thực
17
Digital Envelope Phong bì số
18
TMĐT Thương mại điện tử
19
CNTT Công nghệ thông tin
Phan Vũ Giáp. CNPM - K47
7
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
20
TMTT Thương mại truyền thống

21
NHPH Ngân hàng phát hành
22
SSL Secure Socket Layer
23
TSL Transport Socket Layer
24
SET
Secure Electronic Transaction-Giao thức bảo mật
giao dịch thanh toán điện tử
25
Struts Framework
Một khung làm việc được phát triển theo mô hình
MVC trên nền ngôn ngữ Java
26
Hibernate Framework
Một khung làm việc cho công việc ánh xạ cơ sở
dữ liệu quan hệ được phát triển trên nền ngôn ngữ
Java.
27
MVC
Model-View-Controller, mô hình 3 lớp trong kiến
trúc ứng dụng Web
28
J2EE Java 2 Enterprise Edition
29
ORM
Object/Relation Mapping, ánh xạ quan hệ/đối
tượng
30

EPS
Electronic Payment System: Hệ thống thanh toán
điện tử
31
B2C
Bussiness To Customer hoặc Bussiness To
Consumer
32
B2B Bussiness To Bussiness
33
C2C Customer To Customer
34
Credit Card Thẻ tín dụng
35
Debit Card Thẻ ghi nợ
36
M-Commerce
Mobile Commerce: Thương mại dựa trên thiết bị
di động
37
CRMS
Customer Relationship Management System: Hệ
thống quản lý quan hệ khách hàng.
Phan Vũ Giáp. CNPM - K47
8
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
DANH MỤC HÌNH VẼ
Hình 1-1 Mô hình chung của hệ thống thanh toán điện tử 17
Hình 1-2 Giao dịch thanh toán điện tử sử dụng thẻ tín dụng 19

Hình 1-3 Giao dịch thanh toán điện tử sử dụng tiền số 20
Hình 1-4 Giao dịch thanh toán điện tử sử dụng séc điện tử 21
Hình 2-5 Lịch sử phát triển của SSL/TSL 31
Hình 2-6 SSL đóng vai trò là giao thức dành riêng cho dịch vụ bảo
mật 31
Hình 2-7 Các giao thức thành phần của SSL 33
Hình 2-8 Cách thức đóng gói các thông điệp của SSL 34
Hình 2-9 Vị trí của SET trong giao dịch thanh toán điện tử 36
Hình 2-10 Các thông điệp trong giao thức SET 36
Hình 3-11 Biểu đồ phát triển người dùng Internet Việt Nam từ
2001 đến 2006 45
Hình 3-12 Quy mô lao động của các doanh nghiệp được điều tra
50
Hình 3-13 Tỷ lệ phân bố máy tính trong các doanh nghiệp 51
Hình 3-14 Hình thức kết nối Internet trong các doanh nghiệp 52
Hình 3-15 Trở ngại về an toàn mạng đối với các doanh nghiệp 52
Hình 3-16 Tỉ lệ doanh nghiệp có Website 53
Hình 3-17 Tấn suất cập nhật Website của các doanh nghiệp 54
Hình 4-18 Các thành phần chính trong mô hình MVC 59
Hình 4-19 Kiến trúc MVC theo mô hình 2 trong J2EE 61
Hình 4-20 Kiến trúc Struts theo mô hình 2 62
Hình 4-21 Vị trí của lớp Persistence trong kiến trúc phân lớp 65
Hình 4-22 Một biểu đồ lớp đơn giản 66
Hình 4-23 Biểu đồ lớp được làm phức tạp hơn 67
Hình 4-24 Biểu đồ lớp có thừa kế 68
Hình 4-25 Kiến trúc Hibernate 69
Hình 5-26 Biểu đồ UserCase với tác nhân là khách hàng 75
Hình 5-27 Biểu đồ các UC liên quan đến giỏ hàng 76
Hình 5-28 Các UC của chức năng tìm kiếm 77
Hình 5-29 Các UC của chức năng xem hàng hóa 77

Hình 5-30 Các UC liên quan đến quản lý tài khoản 78
Hình 5-31 Các UC liên quan đến quá trình đặt mua hàng và thanh
toán 78
Hình 5-32 Biểu đồ UC của hệ thống quản lý hàng hóa và đơn
hàng 79
Hình 5-33 Biểu đồ UC cho tác nhân là thư ký đơn hàng 80
Hình 5-34 Biểu đồ UC cho với tác nhân là Store Admin 80
Hình 5-35 Biểu đồ UC quản lý sản phẩm 81
Phan Vũ Giáp. CNPM - K47
9
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
Hình 5-36 Biểu đồ UC quản lý các mặt hàng và giá bán hàng 82
Hình 5-37 Biểu đồ tuần tự của chức năng đăng ký 83
Hình 5-38 Biểu đồ tuần tự của chức năng thay đổi thông tin tài
khoản 83
Hình 5-39 Biểu đồ tuần tự của chức năng đăng nhập 84
Hình 5-40 Biểu đồ tuần tự của chức năng thanh toán 84
Hình 5-41 Quy trình thực hiện thanh toán 85
Hình 5-42 Biểu đồ tuần tự của chức năng thêm hàng vào giỏ hàng
85
Hình 5-43 Thêm một kho lưu trữ 86
Hình 5-44 Thêm Catalog Group mới 86
Hình 5-45 Thêm Item mới 87
Hình 5-46 Soạn thảo mô tả cho Item 87
Hình 5-47 Thêm mới giá trị cho thuộc tính 88
Hình 5-48 Thêm mới giá trị và thuộc tính cho Item 88
Hình 5-49 Phân cấp hàng hóa 89
Hình 5-50 Mô hình tĩnh của toàn bộ hệ thống 90
Hình 5-51 Biểu đồ lớp của chức năng quản lý tài khoản của khách

hàng 91
Hình 5-52 Biểu đồ lớp cho các chức năng liên quan tới giỏ hàng
91
Hình 5-53 Biểu đồ lớp của chức năng thanh toán phần 1 92
Hình 5-54 Biểu đồ lớp của chức năng thanh toán phần 2 92
Hình 5-55 Biểu đồ thực thể liên kết phần 1 93
Hình 5-56 Biểu đồ thực thể liên kết phần 2 93
Hình 5-57 Biểu đồ thực thể liên kết phần 3 94
Hình 5-58 Danh sách các tệp ánh xạ các bảng của cơ sở dữ liệu
và đối tượng theo Hibernate Framework 106
Hình 5-59 Màn hình đăng nhập 106
Hình 5-60 Giao diện cho người quản trị (Store Admin) với chức
năng thêm mới kho hàng 107
Hình 5-61 Màn hình chọn vai trò cho thành viên 108
Hình 5-62 Giao diện cho người dùng là người quản lý sản phẩm,
hàng hóa đưa ra để bán 108
Hình 5-63 Giao diện với tác nhân là kế toán đơn hàng 109
Hình 5-64 Nhập mới thành viên quản trị hệ thống 109
Phan Vũ Giáp. CNPM - K47
10
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
DANH MỤC BẢNG VÀ HỘP
Bảng 2-1 Các thông điệp trong giao thức SSL 33
Bảng 2-2 Giá trị các kiểu giao thức truyền thông điệp cho Record
layer 34
Bảng 3-3 Các địa phương đã có đề án triển khai thương mại điện
tử 41
Bảng 3-4 Các chính sách liên quan tới thương mại điện tử 42
Bảng 3-5 Một số văn bản pháp quy liên quan đến thương mại

điện tử 43
Bảng 3-6 Thống kê lương máy tính của Việt Nam trong tương
quan với thế giới 44
Bảng 3-7 Một số thống kê Internet của Việt Nam so với thế giới
năm 2005 45
Bảng 3-8 Một số thống kê về thực trạng thanh toán thẻ 46
Bảng 3-9 Một số chương trình đào tạo thương mại điện tử tại các
trường Đại học 48
Bảng 3-10 Khảo sát ban đầu về đội ngũ giảng viên thương mại
điện tử 49
Bảng 3-11 Các hình thức đào tạo thương mại điện tử của các
doanh nghiệp 51
Bảng 3-12 Dự án phát triển thương mại điện tử ở các doanh
nghiệp 53
Bảng 3-13 Cac phương thức thanh toán của doanh nghiệp 54
Bảng 3-14 Các phương thức đặt hàng của doanh nghiệp 55
Bảng 3-15 Tỷ lệ dầu tư của doanh nghiệp cho thương mại điện tử
trên tổng chi phí đầu tư 55
Bảng 3-16 Tác động của thương mại điện tử vào kết quả kinh
doanh của doanh nghiệp 56
Bảng 3-17 Các trở ngại đối với việc triển khai ứng dụng thương
mại điện tử 57
Bảng 4-18 Mô tả các thành phần chính trong mô hình MVC 59
Bảng 5-19 Bảng Store 94
Bảng 5-20 Bảng Customer 95
Bảng 5-21 Bảng phương thức vận chuyển 95
Bảng 5-22 Bảng loại hàng hóa 96
Bảng 5-23 Bảng địa chỉ chuyển hàng 96
Bảng 5-24 Bảng nhóm hàng 97
Bảng 5-25 Quan hệ giữa các nhóm hàng 97

Bảng 5-26 Lưu trữ thông tin về hàng hóa nhập vào 97
Bảng 5-27 Mô tả thông tin cho hàng hóa nhập vào 98
Bảng 5-28 Quan hệ giữa các Item 98
Bảng 5-29 Kiểu Item 99
Phan Vũ Giáp. CNPM - K47
11
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
Bảng 5-30 Bảng giá đề nghị bán hàng hóa của nhà sản xuất 99
Bảng 5-31 Bảng giá bán thực của người bán đưa ra 99
Bảng 5-32 Thuộc tính của hàng hóa 100
Bảng 5-33 Giá trị thuộc tính 100
Bảng 5-34 Giá trị thuộc tính của Item 100
Bảng 5-35 Giỏ hàng 101
Bảng 5-36 Item trong giỏ hàng 101
Bảng 5-37 Hàng hóa trong hóa đơn 101
Bảng 5-38 Đơn hàng 102
Bảng 5-39 Đơn hàng phụ 102
Bảng 5-40 Item trong đơn hàng phụ 103
Bảng 5-41 Định nghĩa các module cơ bản của hệ thống 103
Bảng 5-42 Bảng yêu cầu thanh toán đơn hàng 103
Bảng 5-43 Bảng thành viên 104
Bảng 5-44 Vai trò của thành viên 104
Bảng 5-45 Phân vai cho thành viên 104
Bảng 5-46 Phân quyền thực hiện các module của các vai 105
Hộp 3-1Một số hành vi tội phạm trong giao dịch thương mại điện
tử C2C năm 2006 39
Hộp 3-2 Yêu cầu về nhân lực cho thương mại điện tử 47
Hộp 3-3 Yêu cầu về đầu tư phát triển nguồn nhân lực cho thương
mại điện tử 48

Phan Vũ Giáp. CNPM - K47
12
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
LỜI NÓI ĐẦU
Thương mại điện tử đang phát triển rất nhanh và mạnh mẽ trên thế giới, đặc biệt
là ở những nước có hạ tầng công nghệ thông tin phát triển. Trong bối cảnh nền kinh
tế thế giới đang hội nhập ngày càng sâu và rộng. Quá trình làm phẳng thế giới đang
diễn ra ở mọi nơi trong đời sống kinh tế, điều này đặc biệt đúng trong lĩnh vực
thương mại điện tử do tính chất dựa trên hệ thống mạng máy tính toàn cầu của nó.
Cùng với sự phát triển của Internet ở Việt Nam, thương mại điện tử cũng đang
bước những bước đầu tiên trong quá trình phát triển. Các doanh nghiệp đã nhận ra
vai trò quan trọng của thương mại điện tử trong việc phát triển công việc kinh
doanh của họ. Người tiêu dùng cũng đang dần thay đổi thói quen mua sắm bằng
cách thay vì tới trực tiếp cửa hàng thì vào máy tính và tìm kiếm hàng hóa mình cần
mua trên Internet và thực hiện mua hàng với một vài thao tác đơn giản trên máy
tính. Chính phủ Việt Nam, các ngân hàng cũng đang có sự đầu tư lớn để đáp ứng và
hỗ trợ các yêu cấu phát triển của nền thương mại điện tử trong nước.
Ở giai đoạn đầu phát triển thương mại điện tử ở các nước phát triển trên thế giới
như Mỹ, việc thiết kế các Website bán hàng trực tuyến, xây dựng các phần mềm
quản lý quan hệ khách hàng CRM, các phần mềm quản trị doanh nghiệp ERP và
các phần mềm hỗ trợ cho việc phát triển giao dịch thương mại trực tuyến giữa
người mua và người bán rất phát triển. Thực trạng thương mại điện tử ở nước ta
hiện nay cũng tương tự như các quốc gia này trong thời gian đầu của họ. Chúng ta
dễ dàng nhận thấy rằng, xây dựng các phần mềm hỗ trợ các doanh nghiệp trong việc
ứng dụng thương mại điện tử là một thị trường hấp dẫn cho kỹ sư công nghệ thông
tin.
Với mong muốn đóng góp một phần công sức của mình vào tiến trình phát triển
của nền thương mại điện tử Việt Nam, tôi quyết định chọn lĩnh vực “Thương mại
điện tử” làm đề tài cho đồ án tốt nghiệp của mình.

• Nội dung và phạm vi nghiên cứu của đồ án:
Thương mại điện tử là một lĩnh vực rất rộng bao gồm rất nhiều vấn đề cần giải
quyết. Các vấn đề đó từ những vấn đề rất lớn như hoàn thiện hệ thống thanh toán
liên ngân hàng, xây dựng các dịch vụ cổng thanh toán, hạ tầng quản lý khóa công
khai, các dịch vụ bảo mật cho giao dịch thương mại điện tử, các giải pháp cho phép
sử dụng tiền số thay vì tiền mặt trong giao dịch thanh toán, đến những vấn đề như
xây dựng các ứng dụng hỗ trợ các bên trực tiếp tham gia thương mại điện tử là
người mua và người bán.
Tôi không có tham vọng và không thể đưa ra giải pháp cho tất cả các vấn đề
trên. Trong phạm vi đồ án tốt nghiệp của mình, tôi tập trung vào tìm hiểu thương
mại điện tử với mục đích cuối cùng là xây dựng giải pháp cho phép doanh nghiệp
bán hàng trực tuyến. Giải pháp gồm hai phần chính:
 Xây dựng Website cho phép khách hàng có thể mua hàng trực tuyến.
 Xây dựng ứng dụng trên nền Web Back-End cho phép người bán
quản lý cửa hàng trực tuyến của mình.
Phan Vũ Giáp. CNPM - K47
13
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
Hệ thống được xây dựng với mục đích cho phép người bán có thể mở rộng kinh
doanh bất cứ lúc nào họ muốn, nghĩa là không phụ thuộc vào loại hàng hóa mà họ
bán. Ứng dụng cũng được thiết kế cho phép người mua có thể sử dụng thẻ tín dụng
để thanh toán qua mạng.
Đồ án tốt nghiệp cũng tìm hiểu thực trạng nền thương mại điện tử ở Việt Nam
để có được cái nhìn khách quan nhất về nền thương mại điện tử trong nước và để
thấy được tính bức thiết của đề tài.
Công cụ được tôi lựa chọn để phát triển ứng dụng là hai bộ công cụ được phát
triển trên ngôn ngữ Java là Struts và Hibernate Framework. Hệ quản trị cơ sở dữ
liệu được dùng là SQL Server 2000.
Như vậy, nội dụng cụ thể bài toán đồ án tốt nghiệp này giải quyết là: Xây dựng

ứng dụng thương mại điện tử bằng Struts và Hibernate Framework.
• Bố cục đồ án:
Đồ án được chia làm sáu chương với nội dung chính như sau:
 Chương 1: Mô hình thương mại điện tử B2C
Giới thiệu chung về thương mại điện tử, các hệ thống thanh toán điện
tử và giới thiệu chi tiết về mô hình thương mại điện tử B2C.
 Chương 2:Giải pháp an toàn thông tin cho ứng dụng thương mại
điện tử
Giới thiệu về an toàn thông tin, an toàn thông tin trong thương mại
điện tử và tìm giải pháp để đảm bảo an toàn cho ứng dụng thương mại
điện tử.
 Chương 3: Thực trạng thương mại điện tử ở Việt Nam
Tìm hiểu thực trạng thương mại điện tử Việt Nam và đề xuất một số
giải pháp nhằm thúc đẩy phát triển thương mại điện tử ở Việt Nam.
 Chương 4: Giới thiệu về Struts và Hibernate Framework
Giới thiệu chung về hai công nghệ được phát triển trên nền tảng là
ngôn ngữ Java là Struts và Hibernate Framework.
 Chương 5: Xây dựng ứng dụng bán hàng trực tuyến
Phân tích, thiết kế và cài đặt ứng dụng bán hàng trực tuyến. Doanh
nghiệp có thể sử dụng nó với bất kỳ loại hàng hóa nào.
 Chương 6: Đánh giá ứng dụng.
Những đánh giá về ưu, nhược điểm và hướng phát triển của ứng dụng.
Phần cuối cùng của đồ án là danh mục tài liệu tham khảo.
Phan Vũ Giáp. CNPM - K47
14
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
Chương 1 MÔ HÌNH THƯƠNG MẠI ĐIỆN TỬ B2C
Khái niệm và phân loại thương mại điện tử
Thương mại điện tử (TMĐT) là một không gian mua bán trên Internet. TMĐT

(cũng được nói đến như EC, e-commerce, Commerce hoặc ecommerce) bao gồm
các chức năng chính như phân phối, mua, bán, quảng cáo, tiếp thị và phục vụ các
sản phẩm hoặc dịch vụ thông qua mạng truyền thông.
Công nghiệp công nghệ thông tin (IT) có thể xem nó như một ứng dụng kinh
doanh điện tử được tập trung vào các giao dịch thương mại. Như vậy, các hệ thống
chuyển tiền điện tử (electronic fund transfer), quản lý chuỗi cung (supply chain
management), tiếp thị điện tử (e-marketing), xử lý giao dịch trực tuyến (online
transaction processing), trao đổi dữ liệu điện tử (electronic data interchange), hệ
thống quản lý kiểm kê tự động (automated inventory management system), và hệ
thống thu thập dữ liệu tự động (automated data collection systems)… đều là các
thành phần thuộc TMĐT. TMĐT phổ biến sử dụng các công nghệ truyền thông điện
tử của WWW, mặc dù ở một vài thời điểm trong vòng đời các giao dịch nó phụ
thuộc vào máy tính hơn là vào WWW, như cơ sở dữ liệu, email. Nó tất nhiên cũng
phụ thuộc vào các công nghệ phi máy tính khác như cơ sở hạ tầng vận chuyển trong
trường hợp hàng hóa trong TMĐT là hàng hóa vật lý.
Nếu nhìn thương mại điện tử dưới dạng các giao dịch thương mại truyền thống,
người ta phân chia TMĐT thành các loại hình giao dịch cơ bản dưới đây.
• Các giao dịch B2B (Bussiness To Bussiness hay giao dịch giữa các doanh
nghiệp).
• Các giao dịch B2C (Bussiness To Customer hay giao dịch giữa doanh
nghiệp và khách hàng).
• Các giao dịch C2C (Customer To Customer hay các giao dịch giữa khách
hàng và khách hàng).
• Các giao dịch giữa người dân với các dịch vụ quản lý công cộng.
Như vậy, khi nói đến thương mại điện tử, chúng ta đang nói đến một lĩnh vực rất
lớn với rất nhiều loại ứng dụng. Với thời hạn và phạm vi của đồ án tốt nghiệp này,
tôi không thể bao trùm hết tất cả các lĩnh vực ứng dụng thương mại điện tử như đã
nêu trên. Phần tiếp theo của luận văn chúng ta sẽ tập trung tìm hiểu mô hình TMĐT
B2C và xây dựng ứng dụng bán hàng trực tuyến để mô tả cho loại hình thương mại
điện tử này.

Mô hình thương mại điện tử B2C
Một giải pháp thương mại điện tử B2C hoàn chỉnh bao gồm:
• Hệ thống thanh toán điện tử bao gồm cổng thanh toán (Payment
Gateway) và hệ thống các ngân hàng cung cấp các dịch vụ thanh toán
trong các giao dịch thương mại điện tử. Cổng thanh toán là tầng trung
Phan Vũ Giáp. CNPM - K47
15
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
gian kết nối các bên tham gia bao gồm người bán, khách hàng, ngân hàng
và các bộ phận liên quan khác.
• Mạng truyền thông như Intranet, Internet hay thậm chí mạng điện thoại di
động
• Các giải pháp đảm bảo an toàn trong TMĐT.
• Hệ thống quản lý hàn hóa và kinh doanh. Đây là kho lưu trữ hàng hóa
trực tuyến và người bán thực hiện các công việc liên quan đến kinh doanh
của họ như, quản lý đơn hàng, quan hệ khách hàng, phân tích dữ liệu kinh
doanh …
• Cửa hàng trực tuyến là nơi để khách hàng có thể xem hàng hóa, lựa chọn
hàng hóa, xem chính sách của công ty, gửi các yêu cầu tới người bán và
thực hiện thanh toán.
Trong phần tiếp theo của đồ án tốt nghiệp, chúng ta sẽ lần lượt tìm hiều từng thành
phần riêng rẽ và dựa trên lý thuyết đó để xây dựng một ứng dụng thương mại điện
tử B2C hoàn chỉnh. Và từ đây trở đi, nếu không nói rõ chi tiết, từ ngữ thương mại
điện tử được sử dụng cho loại hình thương mại điện tử B2C.
Các hệ thống thanh toán điện tử
Để xây dựng thành công một ứng dụng thương mại điện tử, chúng ta phải tìm
hiểu hạt nhân của nó. Đó là hệ thống thanh toán điện tử. Phần này sẽ giới thiệu về
các hệ thống thanh toán điện tử và tổng quan về các phương tiện thanh toán.
1.1.1 Hệ thống thanh toán điện tử

Hệ thống thanh toán điện tử (EPS-Electronic Payment System) tiến hóa từ hệ
thống thanh toán truyền thống, và kết quả là, hai kiểu hệ thống này có rất nhiều
điểm chung. Tuy nhiên, EPS có nhiều sức mạnh hơn, đặc biệt bởi vì các kỹ thuật
bảo mật không có trong các hệ thống thanh toán truyền thống. Nói môt cách tổng
quát, một EPS là bất kỳ loại dịch vụ mạng nào đó bao gồm sự trao đổi tiền cho việc
thanh toán trong trao đổi hàng hóa hoặc dịch vụ. Hàng hóa có thể là hàng hóa vật lý
như sách vở, đĩa CD, hoặc hàng hóa điện tử như tài liệu, ảnh, nhạc. Tương tự cũng
có các dịch vụ truyền thống như đặt phòng khách sạn, đặt vé máy bay hoặc các dịch
vụ điện tử phân tích thị trường tài chính.
EPS không phải là ý tưởng mới. “Tiền điện tử” đã được sử dụng giữa các
ngân hàng dưới dạng chuyển tiền từ những năm 1960. Khách hàng cũng có khả
năng rút tiền từ máy rút tiền tự động ATM từ lâu rồi.
Một hệ thống thanh toán điện tử đặc trưng được biểu diễn trong hình 2.1. Để
tham gia trong một hệ thống thanh toán điện tử, một khách hàng và người bán phải
có khả năng truy cập vào Internet và trước tiên phải đăng kí với các nhà cung cấp
dịch vụ thanh toán tương ứng. Người cung cấp điều hành một “cổng thanh toán”
(payment gateway) có thể tới được từ cả hai mạng công cộng và mạng riêng của hệ
thống ngân hàng. Cổng thanh toán phục vụ như một cầu nối trung gian giữa cơ sở
hạ tầng thanh toán truyền thống và cơ sở hạ tầng thanh toán điện tử. Một yêu cầu
khác là khách hàng và người bán phải có tài khoản ngân hàng mà có thể kết nối
được tới mạng thanh toán liên ngân hàng. Ngân hàng của người mua gọi là ngân
Phan Vũ Giáp. CNPM - K47
16
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
hàng phát hành (issuer bank, chỉ rõ ngân hàng này là nơi phát hành phương tiện
thanh toán). Ngân hàng của người bán gọi là ngân hàng thụ hưởng (acquier bank),
họ nhận các bản ghi thanh toán từ người bán. Khi mua hàng hóa hoặc dịch vụ,
khách hàng trả tiền cho người bán. Chúng ta giả sử rằng người mua chọn trả tiền
của họ dưới dạng thẻ ghi nợ hoặc thẻ tín dụng. Trước khi cung cấp hàng hóa hoặc

dịch vụ được đặt, người bán hỏi cổng thanh toán (payment gateway) để cho phép
người mua sử dụng các phương tiện thanh toán của họ trong giao dịch. Payment
gateway tiếp xúc với ngân hàng phát hành để thực hiện việc kiểm tra cấp phép. Nếu
mọi việc tốt đẹp, tổng số tiền sẽ được khấu trừ hoặc ghi nợ trong tài khoản của
người mua và được gửi vào tài khoản người bán. Quy trình này biểu diễn một giao
dịch thanh toán thực sự. Cổng thanh toán gửi thông báo tới cho người mua về giao
dịch thanh toán thành công và họ có thể cung cấp các hàng hóa được đặt tới cho
khách hàng. Trong một vài trường hợp, đặc biệt, khi giá cả cho hàng hóa hoặc dịch
vụ là thấp, hàng hóa còn có thể được phân phối trước khi thực hiện kiểm tra câp
phép.
1.1.2 Các kiểu hệ thống thanh toán điện tử
Một hệ thống thanh toán điện tử có thể trực tuyến (online) hoặc không trực
tuyến (offline). Trong một hệ thống không trực tuyến, người trả và người nhận tiền
giao tiếp trực tuyến với nhau trong giao dịch thanh toán nhưng họ không có kết nối
điện tử với ngân hàng tương ứng của nhau. Trong kịch bản này, người trả không thể
yêu cầu cấp phép từ ngân hàng phát hành phương tiện thanh toán theo đường cổng
thanh toán, vì thế người nhận tiền không thể chắc chắn rằng anh ta có đang nhận
được tiền.
Hình 1-1 Mô hình chung của hệ thống thanh toán điện tử
Phan Vũ Giáp. CNPM - K47
17
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
Không có cấp phép, rất khó để đảm bảo người trả không tiêu nhiều tiền hơn
giá trị thực mà anh ta có. Vì lí do chính này, phần lớn hệ thống thanh toán điện tử
được đề xuất là trực tuyến. Một hệ thống online yêu cầu sự có mặt của máy chủ
thực hiện việc cấp quyền thanh toán, bộ phận này có thể là một phần của ngân hàng
phát hành hoặc ngân hàng thụ hưởng. Rõ ràng, một hệ thống trực tuyến yêu cầu
nhiều dịch vụ truyền thông hơn, nhưng bảo mật hơn so với hệ thống thanh toán
không trực tuyến.

Nếu chúng ta phân loại hệ thống thanh toán theo quy mô thanh toán thì có hai
loại là hệ thống thanh toán lớn (macropayment system) và hệ thống thanh toán nhỏ
(micropayment system). Một hệ thống thanh toán điện tử với lượng tiền lớn thường
xuyên được trao đổi được xem như một hệ thống thanh toán lớn. Mặt khác, nếu một
hệ thống được thiết kế cho các giao dịch thanh toán nhỏ (tới 5 euros) được gọi là hệ
thống thanh toán nhỏ. Độ lớn của thanh toán đóng một vai trò quan trọng trong thiết
kế hệ thống và quyết định các chính sách bảo mật có liên quan. Người ta không cần
chi phí các dịch vụ bảo mật đắt đỏ để bảo vệ hệ thống có lượng tiền giao dịch với
giá trị thấp.
Một hệ thống thanh toán có thể dựa trên ghi nợ (debit-based system) hoặc tín
dụng (credit-based). Trong hệ thống dựa trên tín dụng, các loại phí được gửi tới tài
khoản người trả tiền và sau đó người trả trả lượng tiền tích lũy cho các dịch vụ
thanh toán như ngân hàng. Trong một hệ thống dựa trên ghi nợ (như thẻ ghi nợ hay
séc) tài khoản người trả được ghi nợ ngay lập tức khi giao dịch được xử lí.
1.1.3 Các phương tiện thanh toán điện tử và cách thức giao dịch
tương ứng
Các thẻ tín dụng (Credit Cards)
Một vài hệ thống thanh toán sử dụng các phương tiện thanh toán truyền
thống. Thẻ tín dụng hiện tại được sử dụng nhiều nhất trong các phương tiện thanh
toán trên Internet. Thẻ tín dụng đầu tiên từ nhiều thập kỷ trước (Diner’s Club 1949,
American Express 1958). Một thời gian dài, thẻ tín dụng được giới thiệu với
magnetic strips và không được mã hóa với các thông tin chỉ đọc, không ghi được.
Ngày nay, xuất hiện càng nhiều các loại thẻ thông minh bao gồm thiết bị phần cứng
là các chip điện tử có mã hóa và dung lượng bộ nhớ lớn. Gần đây, thậm chí các loại
thẻ tín dụng ảo như các phần mềm ví điện tử đã xuất hiện trên thị trường.
Hình vẽ 1.2 biểu diễn một giao dịch thanh toán đặc trưng với thẻ tín dụng được sử
dụng làm phương tiện thanh toán.
1. Khách hàng đưa thông tin thẻ tín dụng cần thiết cho người bán.
2. Người bán hỏi ngân hàng thụ hưởng về cấp phép thanh toán.
3. Ngân hàng thụ hưởng gửi thông tin cho ngân hàng phát hành để hỏi về cấp phép

thanh toán.
3. Ngân hàng phát hành gửi thông tin cho ngân hàng thụ hưởng trả lời về cấp phép.
4. Nếu trả lời là cho phép, ngân hàng thụ hưởng nói với người bán rằng tiền được
chấp nhận. Bây giờ người bán có thể gửi hàng hóa tới cho khách hàng.
5. (5 đi lên). Khách hàng đưa tiền cho ngân hàng thụ hưởng.
Phan Vũ Giáp. CNPM - K47
18
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
6. (6 sang trái) Ngân hàng thụ hưởng gửi yêu cầu thanh toán tới cho ngân hàng
phát hành.
7. (6 sang phải ) Ngân hàng phát hành đưa tiền vào tài khoản thanh toán liên ngân
hàng và ghi nợ vào tài khoản khách hàng.
8. Ở một thời điểm trung gian, ngân hàng phát hành nhắc khách hàng về các giao
dịch sau đó khách hàng trả phí tổn cho ngân hàng dưới một vài hình thức khác
như ( direct debit order, bank transfer, check). (5 đi xuống).
Hình 1-2 Giao dịch thanh toán điện tử sử dụng thẻ tín dụng
Tiền điện tử (Electronic Money)
Tiền điện tử là dạng biểu diễn điện tử của tiền truyền thống. Một đơn vị tiền
điện tử thường được hiểu như một đồng xu điện tử hay đồng xu số (electronic coin
hoặc digital coin). Giá trị thực sự của một đồng tiền số khác với giá trị của một
đồng tiền thật. Các đồng xu số được sinh bởi nhà phát hành đồng xu số (brokers).
Nếu một khách hàng muốn mua tiền số, họ tiếp xúc với broker, đề nghị tiền và trả
bằng tiền thật. Khách hàng sau đó có thể mua hàng từ bất kỳ nơi nào chấp nhận tiền
số do broker này phát hành. Mỗi người bán có thể trả lại các đồng xu số của broker
lấy được từ khách hàng. Mặt khác, broker lấy lại tiền số và ghi có vào tài khoản
người bán bằng tiền thật.
Phan Vũ Giáp. CNPM - K47
19
Đồ án tốt nghiệp

Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
Hình 1-3 Giao dịch thanh toán điện tử sử dụng tiền số
Hình 1.3 diễn tả một giao dịch thanh toán sử dụng tiền điện tử. Trong ví dụ
này, ngân hàng phát hành có thể đồng thời là broker. Khách hàng và người bán phải
có một current or checking account. Tài khoản người bán cần thiết một dạng chuyển
trạng thái từ tiền thật sang tiền số, ít nhất miễn là tiền số không được xem như là
tiền tệ. Khi khách hàng mua tiền số, checking account được ghi nợ. Bây giờ anh ta
có thể sử dụng tiền này để mua hàng trên internet. Bởi vì tiền số sử dụng trong các
dịch vụ giá trị thấp, người bán thường gửi hàng trước khi xác thực khả năng sử
dụng của tiền.
Séc điện tử (Electronic Check).
Séc điện tử là dạng điện tử tương đương với sec truyền thống. Một sec điện tử là
một tài liệu điện tử với các dữ liệu sau đây:
• Số sec
• Tên người trả
• Số tài khoản người trả và tên ngân hàng
• Tên người nhận
• Số lượng được trả
• Đơn vị tiền tệ được sử dụng
• Ngày hết hạn
Phan Vũ Giáp. CNPM - K47
20
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
• Chữ ký điện tử của người trả
• Chứng thực của người nhận
Hình 1-4 Giao dịch thanh toán điện tử sử dụng séc điện tử
Một giao dịch thanh toán đặc trưng sử dụng Séc điện tử được biểu diễn trong Hình
1.4. Khách hàng đặt hàng hóa hoặc dịch vụ từ người bán, và sau đó người bán gửi
một hóa đơn điện tử tới khách hàng (1). Khi thanh toán, khách hàng gửi một séc

điện tử được ký (2). Như với các phiếu chi truyền thống, người bán chứng thực vào
Sec (ký vào sau) (3). Ngân hàng phát hành và ngân hàng thụ hưởng xem tổng số
lượng tiền thực sự được rút từ tài khoản người mua và ghi có vào tài khoản người
bán (4). Sau khi nhận được sec từ khách hàng, người bán có thể gửi hàng hóa đến
cho họ.
Hệ thống bán hàng (Store-Front)
Hệ thống bán hàng là nơi để trưng bày hàng hóa sản phẩm trực tuyến tới khách
hàng. Do tính chất của thương mại điện tử không phải là mặt đối mặt, đây là kênh
tiếp xúc duy nhất của người bán hàng với khách hàng của họ. Tại đây, người mua
hàng xem tất cả thông tin về hàng hóa, lựa chọn các sản phẩm họ muốn mua và đưa
vào giỏ hàng và thực hiện thanh toán. Nói tóm lại, đây là bộ phận thay thế cho bộ
mặt của công ty trong các giao dịch buôn bán. Nó là người đại diện cho người bán,
cho cửa hàng người bán trong các hệ thống bán hàng mặt đối mặt truyền thống.
Phan Vũ Giáp. CNPM - K47
21
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
1.1.4 Cửa hàng trưng bày sản phẩm
Cửa hàng trưng bày sản phẩm chúng ta muốn nói ở đây là một cửa hàng để
bán hàng hóa bình thường. Điều khác biệt duy nhất với cửa hàng truyền thống là nó
hiện diện trên mạng Internet dưới dạng một Website. Đây là nơi khách hàng duyệt
qua hàng hóa được bán, họ được tạo điều kiện để xem xét cẩn thận và biết được sự
tồn tại của các loại hàng hóa. Việc thiết kế một cửa hàng đẹp, trước tiên là hấp dẫn
người duyệt Web tới thăm Site, hay là nơi bán hàng trực tuyến của mình, sau đó là
khuyến khích họ mua hàng trên Site. Tất nhiên, giá cả là điểm mà khách hàng quan
tâm nhất trước khi quyết định mua hàng nên đây là thông tin không thể thiếu bên
cạnh việc trưng bày sản phẩm. Cửa hàng cũng là nơi cho phép hệ thống lấy về các
yêu cầu của khách hàng về hàng hóa, dịch vụ nhằm nâng cao chất lượng dịch vụ và
trợ giúp cho quá trình phân tích kinh doanh của người bán.
1.1.5 Giỏ hàng

Nếu chúng ta đi siêu thị, người mua hàng luôn có một giỏ hàng để khi muốn
mua một loại hàng hóa nào đó, chúng ta sẽ bỏ vào đó và tiếp tục lựa chọn sản phẩm
hoặc qua gian hàng khác. Trong khi mua hàng, người mua cũng có thể thêm vào,
bớt đi các sản phẩm trong giỏ hàng. Họ cũng có thể so sánh giữa các sản phẩm mà
họ mua để có lựa chọn thích hợp nhất. Hệ thống bán hàng cũng xây dựng tương tự
một giỏ hàng, cho phép khách hàng lựa chọn hàng hóa khi duyệt qua các hàng hóa.
Điểm hay hơn của giỏ hàng trong một hệ thống trực tuyến là người mua có thể kiểm
soát được tổng tiền mà họ phải trả cho hàng hóa họ đang mua. Hệ thống bán hàng
trực tuyến của có thể lưu lại thông tin trong giỏ hàng trong cơ sở dữ liệu với khách
hàng đã có tài khoản trên Site nhằm phục vụ tốt nhất khách hàng của họ. Tuy nhiên,
với khách hàng chưa có tài khoản mua ở cửa hàng, chúng ta duy trì giỏ hàng ở từng
phiên họ truy cập Site. Sau khi lựa chọn đầy đủ hàng hóa
1.1.6 Bàn thanh toán
Sau khi lựa chọn đầy đủ hàng hóa, việc cuối cùng để hoàn tất công việc mua
sắm là đến bàn thanh toán và thực hiện thanh toán. Với hệ thống bán hàng trực
tuyến, người mua chỉ đơn giản nhấp chuột vào nút “thanh toán” ở giỏ mua hàng trên
Site. Sau đó, hệ thống bán hàng sẽ lập hóa đơn bán hàng bao gồm cả thuế và phí
cho dịch vụ vận chuyển, qua đó tính tổng tiền mà họ phải trả cho người bán để có
được hàng hóa. Một hệ thống bán hàng trực tuyến có thể cài đặt nhiều phương thức
thanh toán khác nhau, cho phép sử dụng nhiều phương tiện khác nhau để thực hiện
công việc thanh toán.
Ở các nước có nền thương mại điện tử phát triển với hạ tầng thanh toán hoàn
chỉnh, người dân sử dụng thẻ tín dụng làm phương tiện chủ yếu trong giao dịch
thanh toán. Nghiên cứu thị trường ở các nước này cho thấy, nếu một hệ thống bán
hàng trực tuyến sẽ mất đi 60% tới 80% đơn hàng tiềm năng nếu hệ thống của họ
không chấp nhận thanh toán thẻ tín dụng. Nghiên cứu cũng chỉ ra rằng, nếu hệ
thống của bạn chấp nhận thẻ tín dụng thì không chỉ số lượng đơn hàng nhiều hơn
mà giá trị đơn hàng cũng lớn hơn. Việc chấp nhận thanh toán thẻ tín dụng cho phép
đáp ứng ngay lập tức mong muốn mua hàng và làm cho người mua cảm thấy chắc
chắn về luật pháp đồng thời đơn giản hóa quá trình lấy tiền cho người bán.

Phan Vũ Giáp. CNPM - K47
22
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
1.1.7 Các dịch vụ khách hàng và chính sách của công ty
Phần này của ứng dụng bán hàng là nơi đưa ra các thông tin để trợ giúp trong
quá trình mua hàng của khách hàng. Ở đây, người bán đưa ra các hỗ trợ về cách
thức sử dụng các chức năng của hệ thống. Đưa ra các hướng dẫn cơ bản, các chính
sách của công ty về tính riêng tư, về việc đảm bảo an toàn thông tin cho khách
hàng. Người mua cũng có thể xem các câu hỏi thường xuyên mà bất kì người dùng
nào mới ghé thăm Site hay chưa hiểu các vấn đề của mua bán trực tuyến có thể
tham khảo. Các thông tin về cách thức vận chuyển hàng hóa, giải thích các dịch vụ
mà người bán cung cấp cũng nên cung cấp đầy đủ nhất trong phần này.
Hệ thống quản lý hàng hóa và kinh doanh (Back-End)
Trước khi hàng hóa, sản phẩm được đưa ra trưng bày, bán trên website, công
việc trước tiên là người bán phải đưa thông tin của hàng hóa, dịch vụ đó vào cơ sở
dữ liệu. Để thực hiện được công việc này, một doanh nghiệp thương mại điện tử
phải có hệ thống quản lý hàng hóa trực tuyến và lưu lại kết quả bán hàng của họ.
Với những ứng dụng thương mại điện tử lớn và hoàn thiện, chúng ta có thể phân ra
các thành phần cơ bản bao gồm bộ phận quản lý kho hàng, quản lý đơn hàng, quản
lý quan hệ khách hàng và bộ phận phân tích dữ liệu kinh doanh.
1.1.8 Quản lý kho hàng
Kho hàng, là nơi mà doanh nghiệp bán hàng trực tuyến quản lý dữ liệu về hàng
hóa. Bằng hệ thống này, công ty có khả năng thêm mới sản phẩm, cập nhật dữ liệu
về hàng hóa mà họ đang bán. Các thông tin về thuế, về dịch vụ vận chuyển cũng
được người bán đưa vào bằng bộ phận này. Bên cạnh đó, thông tin về hàng hóa
được bán cũng được lưu trữ lại, như thế dữ liệu kinh doanh được lưu trữ tự động và
có thể thực hiện các phép thống kê tự động nhanh gọn ở bất cứ thời điểm nào. Công
việc kinh doanh cũng hiệu quả hơn nhờ việc phân tính tình hình kinh doanh dựa
trên dữ liệu bán hàng và các chiến lược bán hàng mới cũng được người bán đưa tới

cho khách hàng của họ cực nhanh thông qua hệ thống này.
1.1.9 Quản lý đơn hàng
Bộ phận quản lý đơn hàng do kế toán đơn hàng đảm nhận. Họ duyệt và quản lý
các đơn hàng do người mua đặt để đảm bảo tính đúng đắn, tiền đã được thanh toán
chưa, và hàng đã được chuyển chưa. Bộ phận này cho phép kế toán tìm kiếm hóa
đơn người dùng, xem chi tiết hóa đơn và quản lý thông tin đơn hàng, giữ thông tin
cập nhật cho hóa đơn. Bộ phận phân tích dữ liệu khách hàng có thể sử dụng thông
tin này để xác định yêu cầu khách hàng về đơn hàng của họ và thay đổi các thông
tin cần thiết cho khách hàng của họ.
1.1.10 Quản lý quan hệ khách hàng (Customer Relationship
Management-CRM)
Không quan tâm tới việc cửa hàng được thiết kế tốt như thế nào, các dịch vụ cá
nhân cung cấp cho khách hàng tốt đến mức nào. Chúng ta luôn có cơ hội để tiếp xúc
với khách hàng bằng hệ thống này. Hệ thống có nhiệm vụ giải quyết các yêu cầu
khách hàng tới từ nhiều nơi theo mọi đường từ email, fax tới điện thoại. Các vấn đề
của khách hàng cũng được hệ thống này đảm nhận để đảm bảo giải quyết nhanh
nhất đem đến sự hài lòng lớn nhất cho khách hàng.
Phan Vũ Giáp. CNPM - K47
23
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
1.1.11Phân tích dữ liệu khách hàng
Dữ liệu về khách hàng được lưu trữ một cách tự động vào trong cơ sở dữ liệu.
Bằng các phép toán thống kê, người bán có thể đưa ra các chiến lược kinh doanh
đem lại cho họ lợi ích tốt nhất. Với đặc thù của mình, ứng dụng thương mại điện tử
có thể lưu lại tất cả các hành vi của khách hàng trong quá trình họ duyệt Site. Bộ
phận phân tích dữ liệu khách hàng thu thập, phân tích và hiểu hành vi của khách
hàng, qua đó nó hỗ trợ cho việc quản lý các nhóm hay đưa ra những chiến lược để
thúc đẩy khách hàng mua hàng hóa trên Site của họ.
Trong bối cảnh phát triển của công nghệ, kỹ thuật hiện nay. Việc xây dựng một

cửa hàng trực tuyến hấp dẫn không phải là vấn đề quá khó mà các doanh nghiệp
không thể thực hiện được. Sự khác biệt trong thành công của các doanh nghiệp
tham gia thương mại điện tử thể hiện chính ở chỗ khả năng phân tích dữ liệu khách
hàng của họ đúng đắn đến đâu và các giải pháp, quyết định như thế nào được đưa ra
để phù hợp với kết quả phân tích dữ liệu đó.
Kết chương
Trong chương đầu tiền của đồ án tốt nghiệp này, đồ án đã đi từ khái niệm tổng
quát là thương mại điện tử, đưa ra các mô hình thương mại điện tử phổ biến và tập
trung giới thiệu về mô hình thương mại điện tử B2C, là cơ sở lý thuyết cho việc xây
dựng ứng dụng bán hàng trực tuyến, mục tiêu chính của đồ án tốt nghiệp.
Trong chương 2, chương tiếp theo của đồ án này, tác giả sẽ đi tìm giải pháp về
vấn đề an toàn, vấn đề nổi cộm nhất cho các ứng dụng thương mại điện tử.
Phan Vũ Giáp. CNPM - K47
24
Đồ án tốt nghiệp
Xây dựng ứng dụng bán hàng trực tuyến bằng Struts và Hibernate
Chương 2 GIẢI PHÁP AN TOÀN THÔNG TIN CHO
ỨNG DỤNG THƯƠNG MẠI ĐIỆN TỬ
Để xây dựng thành công một hệ thống thương mại điện tử, vấn đề an toàn thông
tin được đưa lên hàng đầu. Giao dịch thương mại điện tử về cơ bản bao gồm việc
trao đổi thông tin, tiền giữa người mua, người bán và bên thứ ba. Nguy cơ và rủi ro
trong môi trường số yêu cầu sự hiểu biết về các vấn đề kỹ thuật và các thách thức về
an toàn để đảm bảo tính riêng tư và sự tin tưởng trong môi trường trực tuyến. Phần
này của luận văn sẽ nói về an toàn thông tin trong thương mại điện tử. Trước tiên,
chúng ta tìm hiểu các khái niệm cơ bản về an toàn thông tin, tìm hiểu về bảo mật
trong hệ thống thanh toán điện tử và phân tích bảo mật giao thức trong các mô hình
mạng để đưa ra giải pháp tổng thể cho an toàn thông tin trong thương mại điện tử.
Tổng quan về an toàn thông tin
Như bất kỳ một hệ thống nào khác, việc phân tích an toàn thông tin cho hệ
thống thương mại điện tử cũng phải tuân theo quy tắc chung về lý thuyết an toàn

thông tin. Trong phần này này của đồ án, tôi trình bày bộ khung cơ bản cho việc
thiết kế an toàn cho một hệ thống thông tin, các đe dọa về an toàn trong hệ thống
thông tin và các giải pháp được cung cấp để bảo đảm an toàn cho hệ thống là các
dịch vụ và kỹ thuật bảo mật. Do phạm vi của đồ án, phần này tôi chỉ trình bày mang
tính chất giới thiệu để có cái nhìn toàn diện nhất cho bảo mật trong thương mại điện
tử.
2.1.1 Quy trình xây dựng hệ thống an toàn
Các bước trong quy trình xây dựng hệ thống an toàn.
• Bước 1: Nghiên cứu về kiến trúc hệ thống cần bảo vệ
• Bước 2: Phân tích điểm hở
• Bước 3: Phân tích nguy cơ từ điểm hở
o Dạng can thiệp
o Mức độ thiệt hại
o Khả năng phục hồi
o Khả năng xuất hiện nguy cơ
• Bước 4: Hoạch định chính sách an toàn
o Phân mức giá trị tài sản
o Xác định các tình huống truy nhập tài sản
o Xác định các đối tượng, phạm vi tài sản mà đối tượng được phép truy
nhập
• Bước 5: Đề xuất giải pháp, cân nhắc tính khả thi
• Bước 6: Cài đặt và kiểm thử giải pháp
Phan Vũ Giáp. CNPM - K47
25

×