Chương I: CƠ SỞ LÝ THUYẾT 1. KHẢO SÁT YÊU CẦU 1. Quan sát, phỏng vấn - Sau khi có ý tưởng, em đã đi khảo sát tại Quán Hoàng Nguyên Store , địa chỉ 129 Tố Hữu -Phường Hòa Cường Nam, Quận Hải Châu, Thành phố Đà Nẵng. - Phỏng vấn thăm dò ý kiến của các bạn cùng tuổi và những người lớn tuổi hơn về yêu cầu, những bất cập khi mua hàng.
Phân tích kết quả 1. Kết quả khảo sát, phỏng vấn - Đa số tại các cửa hàng thường sử dụng trang facebook cá nhân để quảng cáo, giới thiệu sản phẩm. - Tại cửa hàng Hoàng Nguyên Store đã có một trang facebook riêng để quảng cáo và đăng bán sản phẩm. Việc tìm kiếm sản phẩm,mua bán và trao đổi thông tin được thực hiện trên facebook.Nhưng không có quản lý chi tiết nên bất tiện cho chủ để quản lý.
- Qua thăm dò ý kiến của nhiều người dùng, mọi người đều thích một trang web có thể tìm kiếm sản phẩm và thực hiện mua bán ngay trên điện thoại của mình. - Một số người lớn tuổi không thích sử dụng thiết bị thông minh,việc sử dụng cần nhiều thiết bị máy móc rắc rối nên cũng ít sử dụng. Ý tưởng, cách xử lý 1. Ý tưởng: Sử dụng công nghệ API, Web Service, JAVA,… để xây dựng một trang web.
Người dùng truy cập website trên điện thoại của mình và có thể tìm kiếm, mua bán sản phẩm. Đơn mua hàng sẽ được cập nhật lên web. Người quản lý sẽ thực hiện việc quản lý và giao hàng cho người mua. SVTH:Nguyễn Quang Hưng Trang 3 Xây dựng ứng dụng “Nghiên cứu FrameWork có tích hợp AI và xây dựng ứng dụng” 1.
Cách xử lý: Hình 1.1: Hoạt động của hệ thống 1. Các đối tượng sử dụng, độ khó 1. Đối tượng sử dụng - Tất cả mọi người có điện thoại thông minh, máy tính, lap top. Độ khó - Quảng bá trang web để nhiều người biết đến - Đảm bảo xử lý chính xác.
- Xác thực danh tính của khách hàng 1. Khả năng phát triển 1.1 Tính thương mại - Hiện nay có rất nhiều cửa hàng bán đồ điện tử nhưng chủ yếu dùng facebook cá nhân để quảng cáo, đăng bán sản phẩm.Nên để thu hút được khách hàng, tăng tính cạnh tranh, tăng tính thuận tiện cho khách hàng thì việc áp dụng website để bán hàng sẽ là một lợi thế. - Giới trẻ rất dễ dàng tiếp cận với công nghệ và nhu cầu sử dụng thiết bị công nghệ cao.2 Khả năng tồn tại - Hiện nay trên thị trường đã và đang phát triển loại website này. Trong khi, nhu cầu mua bán trong lĩnh vực này ngày càng cao.
- Sẽ phải có những phiên bản mới, hoàn chỉnh hơn, tiện ích hơn ra đời thay. SVTH:Nguyễn Quang Hưng Trang 4 Xây dựng ứng dụng “Nghiên cứu FrameWork có tích hợp AI và xây dựng ứng dụng” 1. TỔNG QUAN VỀ HTML, CSS, JAVASCRIPT, JQUERY, BOOTSTRAP 1. Ngôn ngữ HTML HTML(HyperText Markup Language hay “Ngôn ngữ Đánh dấu Siêu văn bản”), là một ngôn ngữ đánh dấu được thiết kế để tạo nên các trang web với các mẩu thông tin được trình bày Trên Wide Web.
Tim Berners-Lee là cha đẻ của HTML. Từ năm 1996, các chi tiết kỹ thuật HTML đã được duy trì, với sự đóng góp từ các nhà cung cấp phần mềm thương mại, bởi World Wide Web Consortium(W3C). HTML được viết theo mẫu của các thành phần HTML bao gồm các thẻ được đặt bên trong dấu ngoặc nhọn <>. HTML không phải là ngôn ngữ lập trình, nó là ngôn ngữ trình bày.
Tìm hiểu CSS Hiểu đơn giản: CSS dùng để tô màu cho website. Về định nghĩa: - CSS là viết tắt của từ Cascading Style Sheets. - Được tổ chức World Wide Web (W3C) giới thiệu vào năm 1996. - Là ngôn ngữ định nghĩa cách hiển thị các thẻ html trên website.
( nó sẽ làm cho các thẻ html có màu sắc, font chữ to nhỏ như Word) - CSS khiến mã nguồn trang Web được gọn gàng hơn, tách nội dung của trang web, định dạng và hiển thị dễ dàng cho việc nhập nội dung. - Có thể tạo ra các kiểu dáng áp dụng cho nhiều trang web, giúp tránh việc lặp lại định dạng cho các trang web giống nhau. Thư viện bootstrap Bootstrap là một framework cho phép thiết kế website responsive nhanh hơn và dễ dàng hơn. Bootstrap là bao gồm các HTML templates, CSS templates và Javascript tao ra những cái cơ bản có sẵn như: typography, forms, buttons, tables, navigation, modals, image carousels và nhiều thứ khác.
Trong bootstrap có thêm các plugin Javascript trong nó. Giúp cho việc thiết kế responsive của bạn dễ dàng hơn và nhanh chóng hơn. Ngôn ngữ JavaScript - Jquery ● JavaScript SVTH:Nguyễn Quang Hưng Trang 5 Xây dựng ứng dụng “Nghiên cứu FrameWork có tích hợp AI và xây dựng ứng dụng” JavaScript, theo phiên bản hiện hành, là một ngôn ngữ lập trình kịch bản dựa trên đối tượng được phát triển từ các ý niệm nguyên mẫu. Ngôn ngữ này được dùng rộng rãi cho các trang web, nhưng cũng được dùng để tạo khả năng viết script sử dụng các đối tượng nằm sẵn trong các ứng dụng.
Nó vốn được phát triển bởi Brendan Eich tại Hãng truyền thông Netscape với cái tên đầu tiên Mocha, rồi sau đó đổi tên thành LiveScript, và cuối cùng thành JavaScript. Giống Java, JavaScript có cú pháp tương tự C, nhưng nó gần với Self hơn Java.js là phần mở rộng thường được dùng cho tập tin mã nguồn JavaScript. Phiên bản mới nhất của JavaScript là phiên bản 1.5, tương ứng với ECMA-262 bản ECMAScript là phiên bản chuẩn hóa của JavaScript. Trình duyệt Mozilla phiên bản 1.8 beta 1 có hỗ trợ không đầy đủ cho E4X - phần mở rộng cho JavaScript hỗ trợ làm việc với XML, được chuẩn hóa trong ECMA-357.
● Jquery JQuery thư viện JavaScript đa trình duyệt được thiết kế để đơn giản hóa lập trình phía máy người dùng của HTML, phát hành vào tháng 1 năm 2006 tại BarCamp NYC bởi John Resig. jQuery là thư viện JavaScript phổ biến nhất được sử dụng ngày nay. TÌM HIỂU SPRING MVC FRAMEWORK 1. Spring Framework Spring là một Framework phát triển các ứng dụng Java được sử dụng bởi hàng triệu lập trình viên.
Nó giúp tạo các ứng dụng có hiệu năng cao, dễ kiểm thử, sử dụng lại code… Spring nhẹ và trong suốt (nhẹ: kích thước nhỏ, version cơ bản chỉ khoảng 2MB; trong suốt: hoạt động một cách trong suốt với lập trình viên) Spring là một mã nguồn mở, được phát triển, chia sẻ và có cộng đồng người dùng rất lớn. Spring Framework được xây dựng dựa trên 2 nguyên tắc design chính là: Dependency Injection và Aspect Oriented Programming. Những tính năng core (cốt lõi) của Spring có thể được sử dụng để phát triển Java Desktop, ứng dụng mobile, Java Web. Mục tiêu chính của Spring là giúp phát triển SVTH:Nguyễn Quang Hưng Trang 6 Xây dựng ứng dụng “Nghiên cứu FrameWork có tích hợp AI và xây dựng ứng dụng” các ứng dụng J2EE một cách dễ dàng hơn dựa trên mô hình sử dụng POJO (Plain Old Java Object) Spring Framework có 7 module riêng, mỗi module sẽ có file Jar riêng: - Spring core: cung cấp những đặc tính Ioc và Dependency Ịnection.
- Spring text: cung cấp cách để truy cập đối tượng. - Spring Dao: cung cấp cho tầng JDBC, bỏ bớt những coding dài dòng của JDBC và chuyển đổi mã lỗi được xác định bởi database vendor. - Spring Orm: cung cấp tích hợp với HiberNate,JDO,Oracle Toplink, IBATIS SQL Maps và JPA. - Spring AOP: tích hợp chức năng lập trình hướng khía cạnh vào Sring framework thông qua cấu hình của nó.
- Spring Web: cung cấp đặc tính web như file-upload, khởi tạo IoC container sử dụng trình lắng nghe servlet và web-oriented application context. - Spring MVC: cung cấp mô hình MVC cho ứng dụng web. Spring MVC framework cung cấp sự phân biệt rõ ràng giữa các domain model và web form cho phép bạn sử dụng tất cả các đặc tính khác của Spring framework. Spring MVC Framework Tương tự như Struts,Spring MVC là một request-base framework.
Họ định nghĩa các phương pháp chung cho tất cả các response phải được giải quyết bằng một request-based framework. Mục đích của họ đơn giản là dễ dàng hơn cho developer viết các bổ sung và các cải tiến của riêng họ. Spring MVC giúp cho việc xây dựng ứng dụng web một cách chặt chẽ và linh động. Mẫu thiết kế Model-View-Controller giúp phân chia rạch ròi 3 công việc business logic, presentation logic và navigation logic.
Models chịu trách nhiệm đóng gói dữ liệu của ứng dụng. View có nhiệm vụ hiển thị thông tin cung cấp bởi đối tượng Model trả về cho người dùng. Controllers chịu trách nhiệm nhận request từ người dùng và gọi dịch vụ bên dưới để xử lý. ●Các thành phần quan trọng nhất và chức năng của một Spring MVC framework: ○ Dispatcher Servlet là một lớp đứng ra quản lý toàn bộ các hành động của framework(front controller) trong suốt quá trình thực thi các lệnh thông qua HTTP request.
SVTH:Nguyễn Quang Hưng Trang 7 Xây dựng ứng dụng “Nghiên cứu FrameWork có tích hợp AI và xây dựng ứng dụng” ○ Handler Mapping: chọn một đối tượng sẽ xử ý các request dựa trên các thuộc tính và điều kiện của các request đó. ○ Handler Adapter: thực thi các handler đã được chọn. ○ Controller: đứng giữa Model và View để quản lý các request được gửi tới và chuyển các response chính xác. ○ View: chịu trách nhiệm trả các response cho client.
○ ViewResolver: chọn phương pháp view dựa trên các ligical name đã có sẵn của view. ○ Handler Interceptor: ngăn chặn(lọc) các request từ user. Nó được coi như Servlet filler(không bắt buộc và không bị quản lý bởi Dispatcher Servlet). ○ LocaleResollver: xử lý và lưu một phần các thông tin của user.
○ MultipartResolver: làm cho việc upload file dễ dang hơn bằng các gói các request lại. ● Luồng xử lý request trong Spring MVC Framework: Việc xử lý request và response trong spring MVC Framwork được mô tả như sau: Bước 1: - DispatcherServlet nhận request. - DispatcherServlet tra trong Handler Mapping và gọi Controller kết hợp với request Bước 2: SVTH:Nguyễn Quang Hưng Trang 8 Xây dựng ứng dụng “Nghiên cứu FrameWork có tích hợp AI và xây dựng ứng dụng” - Controller xử lý request bằng cách gọi những phương thức dịc vụ thích hợp và sau đó trả về một đối tượng Model and View cho DispatcherServlet. Đối tượng Model and View này chứa dữ liệu trong đối tượng Model và tên của View.
Bước 3: DispacherServlet gửi tên của View đến cho một ViewResolver. ViewResolver sẽ tìm view thực sự cần dùng. Bước 4: - DispatcherServlet truyền đối tượng Model đến cho View đã xác định để hiển thị kết quả. - View lấy dữ liệu trong đối tượng Model và hiển thị kết quả cho người dùng.
● Các ưu điểm và khuyết điểm của Spring MVC: - Ưu điểm: +Spring là một framework Java mạnh mẽ được sử dụng trong những ứng dụng Java có phạm vi lớn.