CHƯƠNG I: CƠ SỞ LÝ THUYẾT 1.1 HTML5 HTML viết tắt của HyperText Markup Language là ngôn ngữ đánh dấu siêu văn bản được thiết kế để tạo nên một trang web. HTML5 là phiên bản thứ 5 của HTML xuất hiện vào tháng 12 năm 2012 được phát triển để tăng tính tương thích, chuẩn hoá các đánh dấu có sẵn cho tài liệu, đưa ra các đánh dấu mới và giới thiệu giao diện lập trình ứng dụng để toạ ra các ứng dụng web phức tạp.2 CSS3 CSS3 là phiên bản mới nhất của CSS viết tắt của Cascading Style Sheets - ngôn ngữ được sử dụng để định dạng các phần tử được hiển thị tạo nên phong cách cho website. CSS3 mang đến các bộ chọn và thuộc tính mới với các tính năng được mở rộng cho phép thiết kế trang web trở nên linh hoạt hơn với bố cục và cách trình bày. CSS3 được đánh giá cao khi có thể tương thích với các kích thước màn hình và hoạt động trên hầu hết các trình duyệt khác nhau nhưng vẫn khá nhất quán.3 Boostrap Bootstrap là một mã nguồn mở chứa các ngôn ngữ lập trình như HTML, CSS, JavaScript giúp cho việc thiết kế website trở nên dễ dàng, nhanh chóng hơn.
Bootstrap ngày càng phổ biến vì đã được bổ sung thêm tính năng Customize (Tùy chỉnh). Với tính năng này giúp cho người sử dụng có thể linh hoạt hơn trong việc lựa chọn những thuộc tính, phần tử phù hợp mà không cần phải tải toàn bộ mã nguồn về máy. Với xu thế thiết kế website hiện nay, bootstrap đã đáp ứng được việc phát triển giao diện website tương thích với nhiều thiết bị khác nhau đáp ứng yêu cầu cực kì quan trọng trong trải nghiệm người dùng. SVTH: LÊ THỊ PHƯƠNG Trang 5 KHOÁ LUẬN TỐT NGHIỆP GVHD: TS.
NGUYỄN THANH TUẤN 1.4 JavaScript Javascript là một ngôn ngữ thông dịch, chương trình nguồn của nó được nhúng hoặc tích hợp vào tập tin HTML chuẩn. Khi file được load trong browser, browser sẽ thông dịch cho các script và thực hiện các công việc xác định. Chương trình nguồn Javascript được thông dịch trong trang HTML sau khi toàn bộ trang được load nhưng trước khi trang được hiển thị.5 Ngôn ngữ Java Java là một ngôn ngữ lập trình hướng đối tượng dựa trên các lớp .Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi chạy. Những đặc điểm của ngôn ngữ lập trình Java: - Là ngôn ngữ hoàn toàn hướng đối tượng.
- Là ngôn ngữ đa nền cho phép một chương trình có thể thực thi trên các hệ điều hành khác nhau (MS Windows, UNIX, Linux) mà không phải biên dịch lại chương trình. - Là ngôn ngữ đa luồng. - Là ngôn ngữ đơn giản, dễ học, kiến trúc chương trình đơn giản. - Là ngôn ngữ an toàn, có tính bảo mật cao.
- Java hỗ trợ phát triển nhiều loại hình ứng dụng khác nhau chẳng hạn như J2SE (Java 2 Standard Edition) dành cho phát triển ứng dụng clientserver, J2ME (Java 2 Micro Edition) dành cho phát triển ứng dụng trên thiết bị di động, J2EE (Java 2 Enterprise Edition) dành cho phát triển ứng dụng thương mại.6 Môi trường phát triển tích hơp Eclipse Eclipse là một môi trường phát triển tích hợp cho ngôn ngữ lập trình Java, được phát triển ban đầu bởi IBM, và hiện nay bởi tổ chức Eclipse. Ngoài Java, Eclipse còn hỗ trợ nhiều ngôn ngữ lập trình khác như C#, C, C++, PHP, Python, XML, HTML, JavaScript khi sử dụng thêm trình bổ sung (plug-in). SVTH: LÊ THỊ PHƯƠNG Trang 6 KHOÁ LUẬN TỐT NGHIỆP GVHD: TS. NGUYỄN THANH TUẤN Các tính năng của Eclipse hấp dẫn các nhà phát triển nói chung và các nhà phát triển Java nói riêng gồm có : - Có sẵn các trình soạn thảo thông minh để viết Java, HTML, XML… - Làm nổi bật toàn bộ cú pháp trên tất cả trình soạn thảo.
- Kiểm tra toàn bộ cú pháp khi bạn nhập mã lệnh của bạn vào. - Trợ giúp viết mã phân biệt theo ngữ cảnh đối với các ngôn ngữ lập trình được hỗ trợ, bao gồm cả tra cứu động tài liệu hướng dẫn API. - Hỗ trợ phát triển các ứng dụng Java chuẩn, cũng như các ứng dụng đích Java EE, như các ứng dụng Web và các dịch vụ Web. - Tích hợp chặt chẽ với các công cụ xây dựng Java phổ biến, như Apache và Ant Apache Maven.
- Có khả năng kiểm soát, quản lý, và triển khai các ứng dụng tới các máy chủ ngay trong chu kỳ thời gian thử nghiệm và gỡ lỗi. - Tích hợp chặt chẽ với các nguồn dữ liệu quan hệ và không quan hệ thông qua JDBC và Open Data Access (ODA).7 Java Server Page 1.1 Giới thiệu về Java Sever Page - JSP là công nghệ script chạy phía web server của hãng Sun đối trọng với ASP của Microsoft. - JSP dùng ngôn ngữ Java cho các phát biểu như if, for, do…while, while, biểu thức, lời gọi hàm…. và phân biệt chữ HOA và thường.
- Hiện JSP có thể chạy trên nhiều Web server khác nhau từ Tomcat, Apache, Jrun, JavaWebServer,. Miễn là chúng hỗ trợ Servlet Engine. - Mỗi Webserver chỉ hỗ trợ tối đa 1 trong 2 công nghệ JSP hay ASP. Để server nhận biết được file nào là JSP, ta luôn dùng extension đã qui định theo cấu hình (mặc định là *.2 Cấu trúc trang Java Sever Page - Một trang JSP là 1 file *.jsp , ví dụ: “hello.jsp” - Viết một trang JSP bằng bất kỳ trình soạn thảo nào kể cả Notepad, rồi lưu lại với tên *.
SVTH: LÊ THỊ PHƯƠNG Trang 7 KHOÁ LUẬN TỐT NGHIỆP GVHD: TS. NGUYỄN THANH TUẤN - JSP thường dùng các đối tượng Java chính quy để xử lý các giải thuật phức tạp. Các đối tượng java này sẽ được đóng gói dạng JavaBean. - Đoạn script JSP được đóng trong tag <%.
- Biểu thức dạng: <%= (exp) %> tương đương với <% out.8 Servlet Servlet là một công nghệ được sử dụng để tạo ra ứng dụng web, Servlet chạy được trên tất cả cá Web servers và các app Server chuẩn. Servlet thực hiện các nhiệm vụ chính sau đây: - Nhận dữ liệu từ khách hàng gửi tới .Dữ liệu có thể là một mẫu HTML trên một trang Web hoặc nó cũng có thể đến từ một applet hoặc một chương trình khách hàng HTTP tùy chỉnh. - Đọc dữ liệu yêu cầu HTTP ẩn được gửi bởi khách hàng (trình duyệt). Điều này bao gồm các cookie, loại phương tiện truyền thông và các chương trình nén mà trình duyệt hiểu được, … - Xử lý dữ liệu và tạo ra các kết quả.
Quá trình này có thể yêu cầu nói chuyện với một cơ sở dữ liệu, thực hiện một cuộc gọi RMI hoặc CORBA, gọi một dịch vụ Web, hoặc tính trực tiếp phản hồi. - Gửi trả dữ liệu rõ ràng tới khách hàng (trình duyệt). Tài liệu này có thể được gửi bằng nhiều định dạng: HTML, XML, hình ảnh GIF, Excel, … - Gửi phản hồi HTTP ẩn cho khách hàng (trình duyệt). Điều này bao gồm nói với trình duyệt hoặc các trình khách khác loại tài liệu đang được trả về,thiết lập cookie và các tham số bộ nhớ đệm, và các tác vụ khác.9 Mô hình MVC (Model – View – Controller) 1.1 Khái niệm mô hình MVC MVC(Model – View – Controller) là mô hình thiết kế mang tính tổng thể để giải quyết vấn đề có tính nghiệp vụ cao, thường áp dụng cho những dự án lớn và có tính thương mại cao.
Mô hình MVC được tạo ra bởi Krasner và Pope năm 1988 cho Smalltalk, hiện tại được IBM và Apache ứng dụng trong các dự án của họ rất thành công. Đây là một giải pháp cho phép xây dựng các ứng dụng phân tầng một cách rất SVTH: LÊ THỊ PHƯƠNG Trang 8 KHOÁ LUẬN TỐT NGHIỆP GVHD: TS. NGUYỄN THANH TUẤN hiệu quả, bằng cách tạo ra những phương thức quản lý từng tầng một cách riêng lẽ. Trong J2EE, thì MVC cũng được xây dựng dựa trên những tính năng mạnh của công nghệ JSP và Servlet.2 Cấu trúc mô hình MVC gồm 3 tầng: Model: Tách riêng phần Logic và phần hiển thị.
JavaBean: Chứa các thực thể, gồm các dữ liệu (private), kèm theo các phương thức set/get. DAO: Thực hiện các công việc liên quan đến CSDL như kết nối, lấy dữ liệu, truy vấn, chỉnh sửa, thêm xóa dữ liệu trực tiếp với databasse. BO: Truyền yêu cầu từ Servlet chuyển qua DAO, lấy dữ liệu DAO về cho Servlet. Xử lý các yêu cầu nghiệp vụ.
View: Là các trang JSP, nhiệm vụ trả về hiển thị cho người dùng. Controller: Là các trang JSP, có nhiệm vụ nhân các yêu cầu từ người dùng, đưa yêu cầu và nhận dữ liệu từ tầng Model, từ đó chuyển hướng và trả về cho tầng View.3 Tiến trình thực thi mô hình MVC Tiến trình thực thi mô hình của Struts như sau : 1. Một yêu cầu (request) được gửi đến từ view. ActionServlet sẽ tiếp nhận request này, phân tích, kiểm tra.
Sau đó chỉ định cho Action tương ứng thực thi yêu cầu, tính toán những tác vụ cần thiết. ActionServlet đóng vai trò là Controller. Action sẽ thao tác và xử lí trên Model của ứng dụng. Mỗi khi Action hoàn thành việc thao tác và xử lí, nó trả quyền điều khiển về cho ActionServlet kèm theo một key gắn kèm với kết quả trả về.
ActionServlet sẽ dựa vào key này mà quyết định xem các kết quả trả về sẽ được hiển thị như thế nào. ActionServlet trả lời bằng cách gửi lại một request cho view là một liên kết đến kết quả trả về của Action thông qua key trên. Sau đó, view làm nốt công việc trình bày kết quả 1.10 Hệ quản trị cơ sở dữ liệu Microsoft SQL Server SQL (Structure Query Language) là một công cụ quản lý dữ liệu được sử dụng phổ biển ở nhiều lĩnh vực và nó bao gồm tập các câu lệnh sử dụng để tương tác với cơ SVTH: LÊ THỊ PHƯƠNG Trang 9 KHOÁ LUẬN TỐT NGHIỆP GVHD: TS. NGUYỄN THANH TUẤN sở dữ liệu quan hệ.
Hầu hết các ngôn ngữ bậc cao đều có trình hỗ trợ SQL nhưJava, C#, C, C++… SQL được sử dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm: định nghĩa dữ liệu, truy xuất và thao tác dữ liệu, điều khiển và truy cập. Đặc điểm của SQL: - SQL là ngôn ngữ tựa tiếng Anh. - SQL là ngôn ngữ phi thủ tục, nó không yêu cầu cách thức truy nhập cơ sở dữ liệu như thế nào, tất cả các thông báo của SQL đều rất dễ sử dụng và ít khả năng mắc lỗi. - SQL cung cấp tập lệnh phong phú cho các công việc hỏi đáp dữ liệu.
- Chèn, cập nhật, xóa các hàng trong một quan hệ.