WEB
Website
Tập hơp các trang web chưa văn bản, âm thanh. hình ảnh ...
Mỗi trang web có thể lưu trữ ở máy chủ, hoặc tại máy tính cá nhân
Static website
Là loại website mà phần nội dung không thay đổi theo thời gian. Thường được viết bằng mã HTML, CSS, JS
Dynamic website
Là website mà phần nội dung thay đổi theo thời gian, ngữ cảnh hoặc tương tác với người dùng. Thường được viết bằng ngôn ngữ back end như JAVA, PHP ...
Thường được lưu trữ trên máy chủ Web( web sever)
HTTP/HTTPS
HTTP( Hypertext tranfer protocol) giao thức truyền tải siêu văn bản dduojc sử dụng ở trong www. Dùng để truyền tải dữ liệu giữa websever và web brower
HTTPS (secure) giao thức HTTP có thêm chứng chỉ SSL để mã hóa dữ liệu trong lúc truyền tải dữ liệu giữa web server và web brower
Mô hình client- server
Là mô hình thông dụng trong mạng máy tính, chia làm 2 thành phần là máy chủ server và máy tính client
Ý tưởng: Client gửi request đến server --> server xử lý yêu cầu của client rồi trả về kết quả (response)cho client
Java servlet
Là công ngjee được sử dụng để tạo ra ứng dụng Web( được triển khai ở phía server để tạo ra web động)
JSP/ JSTL
JSP(Java Server Pages)
Là ngôn ngữ kịch bản phía server, cho phép người dùng tạo ra các trang web động
So Sánh Servlet
Giống: Đều là ngôn ngữ phía server, xử lý dữ liệu động. Bản chất JSP cũng chính là servlet. Vòng đời JSP giống như servlet
Khác:
- Servlet mạnh xử lý logic điều phối, yếu về giao diện
- JSP mạng về xử lý giao diện, yếu về điều phối
+Ở servlet thì mã HTML nằm trong mã Java,Còn JSP thì mã Java nằm trong mã HTML
JSTL(JSP standard tag library)
Bộ thự viện thẻ chuẩn được bổ sung để hỗ trợ lập trình trong JSP
Core
Format
SQL
XML
Function
MVC (Model - view - controller)
Tầng Model: Biểu diễn dữ liệu, xử lý logic nghiệp vụ, xử lý kết nối DB
Tầng View: hiển thị dữ liệu và giao diện tương tác với người dùng
Tầng Controller: xử lí đón nhận request từ người dùng, kết nối model và view
Lợi ích:
- Dễ tái sử dụng
- Dễ mở rộng
- Dễ bảo trì
- Tách phần view và phần nghiệp vụ riêng biệt
- Cho phép LTV làm việc trên các thành phần khách nhau trong cùng 1 thời điểm
JDBC (Java Database Connectivity)
Là 1 API cho phép kết nối các chương trinh viết bằng JAVA với các hệ quản trì CSDL
Gồm các thành phần
Driver: dùng để liên kết đến CSDL
Driver manager: quản lý danh sách Driver
Connection: Đối tượng biểu thị cho việc kết nối với CSDL
Statement: chứa các câu lệnh SQL gửi đến CSDL thực thi
Result set: chứa tập KQ trả về từ CSDL
SQL Exception: Class xử lý ngoại lệ liên quan đến try cập CSDL
Trình tự làm việc
Tạo 1 connection với các thông tin: Hostname,port, tên DB, username, password
Sử dụng các loại statement để tạo câu lệnh query
Sử dụng Result set để xử lí KQ trả về từ DB
Đóng Connection
Packing và Dependences Management
Statment
Cả 3 đều là Interface
Statment:
Tạo truy vấn SQL tĩnh
Hiệu suất thấp
Không bảo mật
PrepareStatement:
Truy vấn Sql động
Hiệu suất cao
Bảo mật hơn
Callable statement
Gọi SP
Hiệu suất cao
Transaction
Là 1 tiền trình xử lý điểm bắt đầu và kết thúc, gồm nhiều phép thực thi nhỏ trong đó mỗi phép sẽ thực hiện tuần tự và độc lập theo nguyên tắc tất cả thành công thì trancastion thành công, 1 phép fail --> transaction fail
Các thuộc tính ACID
Atomicity
Tính nguyên tử: Tất cả thành công hoặc không
Consistency
Nhất quán: Đảm bảo tính đồng nhất dữ liệu
Isolation
Độc lập: Đảm bảo transaction này độc lập với transaction khác
Durability
Bền vững: đã thực hiện thành công thì kết quả sẽ đảm bảo tốn tại dù có xảy ra lỗi
Đóng gói phần mềm
SP phần mềm khi mà chuyển giao cho người dùng thì bắt buộc phải được đóng gói dể đảm bảo sản phẩm luôn ở trạng thái sẵn sàng hoạt động
Các hình thức đóng gói
Stand alone: chỉ có mã nguồn, không có môi trường thực thi
Self- contained: Mã nguồn + JRE, với khả năng tự khởi động ứng dụng
Sản phẩm sau đóng gói
JAR file
WAR file
Dependences Management tool
Phần mèm giúp quản lý tích họp những thư viện module phụ thuộc vào chương trình/ dự án đang phát triển
Apache ant: ra đời 2000
Maven: 2004 : cho phép tải về các dependence thông qua Internet
Nhược điểm: Quản lý thông qua cú pháp XML, tuân thủ theo tiêu chuẩn Maven Standard Layout --> triển khai file POM dài dòng phưc tạp
Gradle 2012: Build script ngẵn gọn trực quan