SlideShare a Scribd company logo
1 of 54
Download to read offline
Bài 1. Giới thiệu về
Servlet & JSP
Nội dung
 1. Một số khái niệm
 2. Giới thiệu về Servlet và JSP
 3. Các bước phát triển và triển khai ứng
dụng Web
 4. File WAR (Web Application Archive)
 5. Cấu hình ứng dụng web
 6. Web container
2
Web server và client
 Số lượng: vô cùng lớn
 Mục tiêu:
 Xây dựng ứng dụng
được truy cập trên toàn
cầu
3
Web server và client
4
Server làm những gì?
5
Client làm những gì?
6
HTML, HTTP protocol
7
HTTP Protocol
 Giao thức HTTP chạy trên TCP/IP
 TCP: đảm bảo file được từ nút mạng này tới nút
mạng khác nguyên vẹn
 IP: chịu trách nhiệm định tuyến, dịch chuyển gói
tin
 Cấu trúc HTTP: chuỗi Request và Response
 Browser: request
 Server: response
8
HTTP Protocol
9
 Request:
 POST hay GET
 Trang request (url)
 Tham số
 Response
 Mã trạng thái
 Context type: text, pic..
 Nội dung
Phương thức GET và POST
GET POST
Lịch sử,
bookmark
Tham số hiển thị trên URL,
có thể bookmark
Tham số không hiển thị trên
URL, không thể bookmark
Loại dữ
liệu
Chỉ kí tự ASCII Không giới hạn
Giới hạn
về độ dài
Có, vì độ dài URL có giới
hạn, thường 2048 kí tự
Không giới hạn
Sử dụng Không sử dụng khi gửi thông
tin bí mật: password
Sử dụng để gửi các thông tin
bí mật: passowrd
10
GET:
http://phucanh.vn/category-2/laptops.html ?min=10000000&max=12000000
URL
11
Website vs web application
12
2. Giới thiệu về Servlet và JSP
 Servlet và JSP: các web component
 Cho phép tạo ra các nội dung động
13
Web Components & Container
 Các web components chạy trên 1 Web container
 Các web containers phổ biến: Tomcat và Resin
 Web container cung cấp các dịch vụ hệ thống cho
các Web components
 Request dispatching, security, và quản lý vòng đời
14
Web Application & Components
 Web Application là 1 gói triển khai, gồm:
 Web components (Servlets và JSP)
 Tài nguyên tĩnh như images
 Helper classes (sử dụng bởi web components)
 Thư viện Libraries
 Deployment descriptor (web.xml file)
 Web Application có thể được tổ chức thành
 Phân cấp các thư mục và files (dạng chưa đóng gói -
unpacked form) hoặc
 *.WAR file: có fân cấp như trên (dạng đóng gói-packed
form)
15
Web Request Handling
16
3. Các bước phát triển và triển
khai ứng dụng Web
17
Các bước phát triển và triển khai ứng
dụng Web
 Viết code (và biên dịch) cho các Web component
Servlet/JSP sử dụng trong web component
 Tạo các tài nguyên tĩnh (Images, các trang HTML)
 Viết file deployment descriptor (web.xml)
 Build ứng dụng Web (Tạo file *.war hoặc thư mục
dạng chưa đóng gói nhưng triển khai được)
 Triển khai ứng dụng Web trên 1 Web container
 Web clients có thể truy cập ứng dụng qua URL
18
Development Tree Structure
 Tạo cấu trúc cây thư mục (Development Tree
Structure) cho việc viết ứng dụng web
 Thư mục gốc bao gồm:
 src: Mã nguồn Java cho các servlets và các
JavaBeans
 web: các trang JSP, HTML, images
 Có thể sử dụng IDE Netbeans để hỗ trợ
19
Ví dụ 1: cấu trúc cây project ch1
 ch1
 src
 Ch1Servlet.java
 web
 WEB-INF
 web.xml
20
ch1
websrc
WEB-INF
web.xml
Ch1Servlet
.java
Ch1Servlet.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Ch1Servlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
java.util.Date today = new java.util.Date();
out.println("<html> " + "<body> "
+ "<h1 align=center>Servlet</h1>"
+ "<br>" + today + "</body>" + "</html>" );
}
}
21
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<servlet>
<servlet-name>Chuong 1 Servlet</servlet-name>
<servlet-class>Ch1Servlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Chuong 1 Servlet</servlet-name>
<url-pattern>/Serv</url-pattern>
</servlet-mapping>
</web-app>
22
Biên dịch & triển khai trong Netbeans
 Biên dịch
 Các file được biên
dịch thành file .class
23
ch1
web
dist
WEB-INF
web.xml
ch1.war
build
classes
Ch1Servlet
.class
Request từ client
 Trên trình duyệt gõ:
http://localhost:8084/ch1/Serv
24
Cấu trúc triển khai trong Tomcat
25
Request từ client
 Run Tomcat
 Trên trình duyệt gõ
http://localhost:8080/ch1/Serv
26
Nhận xét
 Việc chèn thẻ HTML trong câu
lệnh println là dễ dàng?
 Giải pháp: JSP
<html>
<body>
<%=new
java.util.Date() %>
</body>
</html>
 Ý nghĩa của file web.xml?
27
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<servlet>
<servlet-name>Chuong 1 Servlet</servlet-name>
<servlet-class>Ch1Servlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Chuong 1 Servlet</servlet-name>
<url-pattern>/Serv</url-pattern>
</servlet-mapping>
</web-app>
28
Ví dụ 2
 Ví dụ hello2 trong tutorial của J2EE 1.4
 Mục đích:
 Tạo 2 servlet có liên kết với nhau
 GreetingServlet chuyển yêu cầu tới
ResponseServlet
 Tài nguyên tĩnh
 File đóng gói war
 Hiểu hơn về file web.xml
29
http://localhost:8080/hello2/greeting
30
31
Cấu trúc cây hello2
 Hello2
 src/servlets
 GreetingServlet.java
 ResponseServlet.java
 web
 WEB-INF
 web.xml
 duke.waving.gif
 build.xml
32
Cấu trúc sau khi biên dịch
 Hello2
 src
 web
 build.xml
 build
 WEB-INF
 classes
 GreetingServlet.class
 ResponseServlet.class
 web.xml
 duke.waving.gif
33
GreetingServlet
String username = request.getParameter("username");
if ((username != null) && (username.length() > 0)) {
RequestDispatcher dispatcher =
getServletContext()
.getRequestDispatcher("/response");
if (dispatcher != null) {
dispatcher.include(request, response);
}
}
34
ResponseServlet
public class ResponseServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
String username = request.getParameter("username");
if ((username != null) && (username.length() > 0)) {
out.println("<h2>Hello, " + username + "!</h2>");
}
}
35
web.xml
<servlet>
<servlet-name>GreetingServlet</servlet-name>
<servlet-class>servlets.GreetingServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ResponseServlet</servlet-name>
<servlet-class>servlets.ResponseServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>GreetingServlet</servlet-name>
<url-pattern>/greeting</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ResponseServlet</servlet-name>
<url-pattern>/response</url-pattern>
</servlet-mapping>
36
4. Web Application Archive
(*.WAR)
37
Ứng dụng Web
 Ứng dụng Web có thể được triển khai ở 2
dạng
 Một file *.war
 Một thư mục, cấu trúc giống file *.war file (thư
mục build)
 Sử dụng dạng file *.war khi muốn triển khai
trên 1 remote machine
38
File *.WAR là gì?
 Là gói triển khai được trên web container
 Tương tự như file *.jar
 Chứa tất cả thành phần cần thiết:
 Web components (servlets hoặc JSP)
 Các Class tiện ích
 Nội dung tĩnh (HTML, image, …)
 Các lớp phía Client (applets và các lớp tiện ích)
 Có nội dung giống như thư mục build
39
Cấu trúc thư mục của 1 file *.WAR
40
Cấu trúc thư mục của 1 file *.WAR
41
Tạo 1 file *.WAR như thế nào?
 3 cách khác nhau:
 Sử dụng IDE (NetBeans)
 Sử dụng công cụ ant
 “asant create-war” (J2EE 1.4 tutorial)
 Sử dụng lệnh “jar cvf <filename>.war .” khi ở
trong thư mục build
42
Ví dụ: Tạo file hello2.war với lệnh “asant
create-war”
C:j2eetutorial14exampleswebhello2>asant create-war
Buildfile: build.xml
...
create-war:
[echo] Creating the WAR....
[delete] Deleting:
C:j2eetutorial14exampleswebhello2assemblewarhello2.war
[delete] Deleting directory
C:j2eetutorial14exampleswebhello2assemblewarWEB-INF
[copy] Copying 1 file to
C:j2eetutorial14exampleswebhello2assemblewarWEB-INF
[copy] Copying 2 files to
C:j2eetutorial14exampleswebhello2assemblewarWEB-INFclasses
[war] Building war:
C:j2eetutorial14exampleswebhello2assemblewarhello2.war
[copy] Copying 1 file to C:j2eetutorial14exampleswebhello2
43
Ví dụ: Tạo file hello2.war sử dụng lệnh jar
C:j2eetutorial14exampleswebhello2build>jar cvf hello2.war .
added manifest
adding: duke.waving.gif(in = 1305) (out= 1295)(deflated 0%)
adding: servlets/(in = 0) (out= 0)(stored 0%)
adding: servlets/GreetingServlet.class(in = 1680) (out= 887)(deflated 47%)
adding: servlets/ResponseServlet.class(in = 1090) (out= 572)(deflated 47%)
C:j2eetutorial14exampleswebhello2build>jar xvf hello2.war
created: META-INF/
extracted: META-INF/MANIFEST.MF
extracted: duke.waving.gif
created: servlets/
extracted: servlets/GreetingServlet.class
extracted: servlets/ResponseServlet.class
44
Thư mục WEB-INF
 Chứa:
 web.xml : Web application deployment descriptor
 Các file JSP tag library descriptor
 Classes : là thư mục chứa các lớp phía server:
servlets, lớp tiện ích, các JavaBeans
 lib : là thư mục chứa các file thư viện JAR (tag
libraries, các thư viện tiện ích được gọi bởi các
lớp phía server)
45
5. Cấu hình ứng dụng Web
 Thông số cấu hình được đặc tả trong file
web.xml (Web Applications Deployment
Descriptor)
46
Prolog (web.xml)
 Tất cả tài liệu XML cần có prolog
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance"
xsi:schemaLocation=http://java.sun.com/xml/n
s/javaee
http://java.sun.com/xml/ns/javaee/web-
app_3_0.xsd version="3.0">
47
Alias Paths (web.xml)
 Khi 1 Servlet container nhận 1 request, nó cần biết
Web component nào trong ứng dụng Web sẽ xử lý
request này.
 Thực hiện map URL path trong request tới 1 Web
component
 Alias Path có thể có 2 dạng
 /alias-string (cho servlet) hoặc
 /*.jsp (cho JSP)
48
web.xml
<servlet>
<servlet-name>GreetingServlet</servlet-name>
<servlet-class>servlets.GreetingServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ResponseServlet</servlet-name>
<servlet-class>servlets.ResponseServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>GreetingServlet</servlet-name>
<url-pattern>/greeting</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ResponseServlet</servlet-name>
<url-pattern>/response</url-pattern>
</servlet-mapping>
49
6. Web Container
50
51
52
Vai trò của Container
 Hỗ trợ giao tiếp giữa servlet và web server
 Quản lý vòng đời của các servlet: khởi tạo,
gọi, hủy
 Hỗ trợ đa tuyến
 Cấu hình ứng dụng web dễ dàng qua
web.xml
 Hỗ trợ dịch các trang JSP
53
Thảo luận
54

More Related Content

What's hot

Lớp kết nối csdl dùng jdbc trong java
Lớp kết nối csdl dùng jdbc trong javaLớp kết nối csdl dùng jdbc trong java
Lớp kết nối csdl dùng jdbc trong javaANHMATTROI
 
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng webBài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng webMasterCode.vn
 
Lập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biếnLập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biếnSon Nguyen
 
Co ban ve_zend_framework 1
Co ban ve_zend_framework 1Co ban ve_zend_framework 1
Co ban ve_zend_framework 1Ông Thông
 
Spring mvc
Spring mvcSpring mvc
Spring mvcBa Big
 
Các bước kết nối csdl my sql với java
Các bước kết nối csdl my sql với javaCác bước kết nối csdl my sql với java
Các bước kết nối csdl my sql với javaBrand Xanh
 
Lap trinh giao dien nguoi dung voi Java
Lap trinh giao dien nguoi dung voi JavaLap trinh giao dien nguoi dung voi Java
Lap trinh giao dien nguoi dung voi JavaANHMATTROI
 
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng Cao
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng CaoBài 4: JSP Cơ Bản - Lập Trình Mạng Nâng Cao
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng CaoTuan Nguyen
 
Hướng dẫn xây dựng ứng dụng web theo mô hình MVC bằng ngôn ngữ Java
Hướng dẫn xây dựng ứng dụng web theo mô hình MVC bằng ngôn ngữ JavaHướng dẫn xây dựng ứng dụng web theo mô hình MVC bằng ngôn ngữ Java
Hướng dẫn xây dựng ứng dụng web theo mô hình MVC bằng ngôn ngữ JavaHuy Vũ
 
Bài 4 Bảo mật cho website - Xây dựng ứng dụng web
Bài 4 Bảo mật cho website - Xây dựng ứng dụng webBài 4 Bảo mật cho website - Xây dựng ứng dụng web
Bài 4 Bảo mật cho website - Xây dựng ứng dụng webMasterCode.vn
 
Asp.net mvc framework qua cac vi du
Asp.net mvc framework  qua cac vi duAsp.net mvc framework  qua cac vi du
Asp.net mvc framework qua cac vi duKim Hyun Hai
 
Học Zend Framework - Khóa học lập trình Zend Framework
Học Zend Framework - Khóa học lập trình Zend FrameworkHọc Zend Framework - Khóa học lập trình Zend Framework
Học Zend Framework - Khóa học lập trình Zend FrameworkKhanhPham
 
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPT
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPTBài 3 Lập trình PHP (phần 1) - Giáo trình FPT
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPTMasterCode.vn
 
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPTBài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPTMasterCode.vn
 
Spring framework
Spring frameworkSpring framework
Spring frameworkAn Nguyen
 

What's hot (20)

Lớp kết nối csdl dùng jdbc trong java
Lớp kết nối csdl dùng jdbc trong javaLớp kết nối csdl dùng jdbc trong java
Lớp kết nối csdl dùng jdbc trong java
 
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng webBài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
 
Lập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biếnLập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biến
 
Co ban ve_zend_framework 1
Co ban ve_zend_framework 1Co ban ve_zend_framework 1
Co ban ve_zend_framework 1
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
 
Các bước kết nối csdl my sql với java
Các bước kết nối csdl my sql với javaCác bước kết nối csdl my sql với java
Các bước kết nối csdl my sql với java
 
Web203 slide 5
Web203   slide 5Web203   slide 5
Web203 slide 5
 
Lap trinh giao dien nguoi dung voi Java
Lap trinh giao dien nguoi dung voi JavaLap trinh giao dien nguoi dung voi Java
Lap trinh giao dien nguoi dung voi Java
 
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng Cao
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng CaoBài 4: JSP Cơ Bản - Lập Trình Mạng Nâng Cao
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng Cao
 
Asp control
Asp controlAsp control
Asp control
 
Ch06
Ch06Ch06
Ch06
 
Hướng dẫn xây dựng ứng dụng web theo mô hình MVC bằng ngôn ngữ Java
Hướng dẫn xây dựng ứng dụng web theo mô hình MVC bằng ngôn ngữ JavaHướng dẫn xây dựng ứng dụng web theo mô hình MVC bằng ngôn ngữ Java
Hướng dẫn xây dựng ứng dụng web theo mô hình MVC bằng ngôn ngữ Java
 
Bài 4 Bảo mật cho website - Xây dựng ứng dụng web
Bài 4 Bảo mật cho website - Xây dựng ứng dụng webBài 4 Bảo mật cho website - Xây dựng ứng dụng web
Bài 4 Bảo mật cho website - Xây dựng ứng dụng web
 
Asp.net mvc framework qua cac vi du
Asp.net mvc framework  qua cac vi duAsp.net mvc framework  qua cac vi du
Asp.net mvc framework qua cac vi du
 
Học Zend Framework - Khóa học lập trình Zend Framework
Học Zend Framework - Khóa học lập trình Zend FrameworkHọc Zend Framework - Khóa học lập trình Zend Framework
Học Zend Framework - Khóa học lập trình Zend Framework
 
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPT
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPTBài 3 Lập trình PHP (phần 1) - Giáo trình FPT
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPT
 
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPTBài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
 
Tim+hieu+jquery
Tim+hieu+jqueryTim+hieu+jquery
Tim+hieu+jquery
 
Giới thiệu Yii Framework 1
Giới thiệu Yii Framework 1Giới thiệu Yii Framework 1
Giới thiệu Yii Framework 1
 
Spring framework
Spring frameworkSpring framework
Spring framework
 

Similar to Bai1 gioi thieu_servlet_va_jsp_8952

Giao trinh asp.ne_tvoi_csharp
Giao trinh asp.ne_tvoi_csharpGiao trinh asp.ne_tvoi_csharp
Giao trinh asp.ne_tvoi_csharpngohanty13
 
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theoBài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theoMasterCode.vn
 
Web1012 slide 1
Web1012   slide 1Web1012   slide 1
Web1012 slide 1Cà Rốt
 
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPT
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPTBÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPT
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPTMasterCode.vn
 
Lập trình web asp.net MVC
Lập trình web asp.net MVCLập trình web asp.net MVC
Lập trình web asp.net MVCMasterCode.vn
 
Slide Web Service
Slide Web ServiceSlide Web Service
Slide Web Serviceask bills
 
Giao trinh java script
Giao trinh java scriptGiao trinh java script
Giao trinh java scripthieusy
 
Javascript tong-hop a-z
Javascript tong-hop a-zJavascript tong-hop a-z
Javascript tong-hop a-zManhh Nguyễn
 
Kiến thức cần thiết làm việc
Kiến thức cần thiết làm việcKiến thức cần thiết làm việc
Kiến thức cần thiết làm việcmanhvokiem
 
Hoc Jquery Trong 1h
Hoc Jquery Trong 1hHoc Jquery Trong 1h
Hoc Jquery Trong 1hDang Tuan
 

Similar to Bai1 gioi thieu_servlet_va_jsp_8952 (20)

Giao trinh asp.ne_tvoi_csharp
Giao trinh asp.ne_tvoi_csharpGiao trinh asp.ne_tvoi_csharp
Giao trinh asp.ne_tvoi_csharp
 
Giáo trình asp.net với c sharp
Giáo trình asp.net với c sharpGiáo trình asp.net với c sharp
Giáo trình asp.net với c sharp
 
Bai08 10 java_fx
Bai08 10 java_fxBai08 10 java_fx
Bai08 10 java_fx
 
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theoBài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
 
Web1012 slide 1
Web1012   slide 1Web1012   slide 1
Web1012 slide 1
 
Sof301 slide1
Sof301   slide1Sof301   slide1
Sof301 slide1
 
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPT
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPTBÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPT
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPT
 
Lab lap trinhmang_v3
Lab lap trinhmang_v3Lab lap trinhmang_v3
Lab lap trinhmang_v3
 
Lập trình web asp.net MVC
Lập trình web asp.net MVCLập trình web asp.net MVC
Lập trình web asp.net MVC
 
Slide Web Service
Slide Web ServiceSlide Web Service
Slide Web Service
 
Giao trinh java script
Giao trinh java scriptGiao trinh java script
Giao trinh java script
 
Java fx
Java fxJava fx
Java fx
 
Giao trinh java script
Giao trinh java scriptGiao trinh java script
Giao trinh java script
 
Javascript tong-hop a-z
Javascript tong-hop a-zJavascript tong-hop a-z
Javascript tong-hop a-z
 
Web1012 slide 1
Web1012   slide 1Web1012   slide 1
Web1012 slide 1
 
Kiến thức cần thiết làm việc
Kiến thức cần thiết làm việcKiến thức cần thiết làm việc
Kiến thức cần thiết làm việc
 
Asp.net 3.5 _1
Asp.net 3.5 _1Asp.net 3.5 _1
Asp.net 3.5 _1
 
Php 01 modau
Php 01 modauPhp 01 modau
Php 01 modau
 
Hoc Jquery Trong 1h
Hoc Jquery Trong 1hHoc Jquery Trong 1h
Hoc Jquery Trong 1h
 
Java script
Java scriptJava script
Java script
 

Recently uploaded

GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...
GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...
GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...Nguyen Thanh Tu Collection
 
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...Nguyen Thanh Tu Collection
 
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 CÁNH DIỀU - CẢ NĂM THEO CÔNG VĂN 5512 (2 CỘT)...
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 CÁNH DIỀU - CẢ NĂM THEO CÔNG VĂN 5512 (2 CỘT)...GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 CÁNH DIỀU - CẢ NĂM THEO CÔNG VĂN 5512 (2 CỘT)...
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 CÁNH DIỀU - CẢ NĂM THEO CÔNG VĂN 5512 (2 CỘT)...Nguyen Thanh Tu Collection
 
Đề ôn thi VIOEDU lớp 1 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)
Đề ôn thi VIOEDU lớp 1 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)Đề ôn thi VIOEDU lớp 1 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)
Đề ôn thi VIOEDU lớp 1 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)Bồi Dưỡng HSG Toán Lớp 3
 
Chương 1- TTHCM.pptx. SLide giới thiệu về tư tưởng HỒ CHÍ MINH
Chương 1- TTHCM.pptx. SLide giới thiệu về tư tưởng HỒ CHÍ MINHChương 1- TTHCM.pptx. SLide giới thiệu về tư tưởng HỒ CHÍ MINH
Chương 1- TTHCM.pptx. SLide giới thiệu về tư tưởng HỒ CHÍ MINHlaikaa88
 
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 TIẾNG ANH I-LEARN SMART START LỚP 3, 4 NĂM HỌC 2023-...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 TIẾNG ANH I-LEARN SMART START LỚP 3, 4 NĂM HỌC 2023-...BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 TIẾNG ANH I-LEARN SMART START LỚP 3, 4 NĂM HỌC 2023-...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 TIẾNG ANH I-LEARN SMART START LỚP 3, 4 NĂM HỌC 2023-...Nguyen Thanh Tu Collection
 
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT HÓA HỌC 2024 - TỪ CÁC TRƯỜNG, TRƯ...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT HÓA HỌC 2024 - TỪ CÁC TRƯỜNG, TRƯ...TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT HÓA HỌC 2024 - TỪ CÁC TRƯỜNG, TRƯ...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT HÓA HỌC 2024 - TỪ CÁC TRƯỜNG, TRƯ...Nguyen Thanh Tu Collection
 
GIÁO ÁN KẾ HOẠCH BÀI DẠY CÔNG NGHỆ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN ...
GIÁO ÁN KẾ HOẠCH BÀI DẠY CÔNG NGHỆ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN ...GIÁO ÁN KẾ HOẠCH BÀI DẠY CÔNG NGHỆ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN ...
GIÁO ÁN KẾ HOẠCH BÀI DẠY CÔNG NGHỆ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN ...Nguyen Thanh Tu Collection
 
CH glucid university of Pham Ngoc Thach- v7.pdf
CH glucid university of Pham Ngoc Thach- v7.pdfCH glucid university of Pham Ngoc Thach- v7.pdf
CH glucid university of Pham Ngoc Thach- v7.pdfSuperJudy1
 
Đề ôn thi VIOEDU lớp 2 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)
Đề ôn thi VIOEDU lớp 2 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)Đề ôn thi VIOEDU lớp 2 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)
Đề ôn thi VIOEDU lớp 2 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)Bồi Dưỡng HSG Toán Lớp 3
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 5512 ...
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 5512 ...GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 5512 ...
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 5512 ...Nguyen Thanh Tu Collection
 
trò chơi về môn học tư tưởng hồ chí minh
trò chơi về môn học tư tưởng hồ chí minhtrò chơi về môn học tư tưởng hồ chí minh
trò chơi về môn học tư tưởng hồ chí minhNguynHuTh6
 
GIẢI-ĐỀ-CƯƠNG-NHẬP-MÔN-KHOA-HỌC-XÃ-HỘI-VÀ-NHÂN-VĂN-KHIÊM-BK69.pdf
GIẢI-ĐỀ-CƯƠNG-NHẬP-MÔN-KHOA-HỌC-XÃ-HỘI-VÀ-NHÂN-VĂN-KHIÊM-BK69.pdfGIẢI-ĐỀ-CƯƠNG-NHẬP-MÔN-KHOA-HỌC-XÃ-HỘI-VÀ-NHÂN-VĂN-KHIÊM-BK69.pdf
GIẢI-ĐỀ-CƯƠNG-NHẬP-MÔN-KHOA-HỌC-XÃ-HỘI-VÀ-NHÂN-VĂN-KHIÊM-BK69.pdfHngNguyn271079
 
Tài liệu kỹ thuật điều hòa Panasonic - Điện lạnh Bách Khoa
Tài liệu kỹ thuật điều hòa Panasonic - Điện lạnh Bách KhoaTài liệu kỹ thuật điều hòa Panasonic - Điện lạnh Bách Khoa
Tài liệu kỹ thuật điều hòa Panasonic - Điện lạnh Bách KhoaKhiNguynCngtyTNHH
 
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docxNỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx7E26NguynThThyLinh
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 8 CẢ NĂM - FRIENDS PLUS - BẢN ĐẸP - CÓ FILE NGH...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 8 CẢ NĂM - FRIENDS PLUS - BẢN ĐẸP - CÓ FILE NGH...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 8 CẢ NĂM - FRIENDS PLUS - BẢN ĐẸP - CÓ FILE NGH...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 8 CẢ NĂM - FRIENDS PLUS - BẢN ĐẸP - CÓ FILE NGH...Nguyen Thanh Tu Collection
 
GIÁO ÁN KẾ HOẠCH BÀI DẠY ĐỊA LÍ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 551...
GIÁO ÁN KẾ HOẠCH BÀI DẠY ĐỊA LÍ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 551...GIÁO ÁN KẾ HOẠCH BÀI DẠY ĐỊA LÍ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 551...
GIÁO ÁN KẾ HOẠCH BÀI DẠY ĐỊA LÍ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 551...Nguyen Thanh Tu Collection
 

Recently uploaded (20)

GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...
GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...
GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...
 
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...
 
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 CÁNH DIỀU - CẢ NĂM THEO CÔNG VĂN 5512 (2 CỘT)...
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 CÁNH DIỀU - CẢ NĂM THEO CÔNG VĂN 5512 (2 CỘT)...GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 CÁNH DIỀU - CẢ NĂM THEO CÔNG VĂN 5512 (2 CỘT)...
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 CÁNH DIỀU - CẢ NĂM THEO CÔNG VĂN 5512 (2 CỘT)...
 
Đề ôn thi VIOEDU lớp 1 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)
Đề ôn thi VIOEDU lớp 1 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)Đề ôn thi VIOEDU lớp 1 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)
Đề ôn thi VIOEDU lớp 1 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)
 
Chương 1- TTHCM.pptx. SLide giới thiệu về tư tưởng HỒ CHÍ MINH
Chương 1- TTHCM.pptx. SLide giới thiệu về tư tưởng HỒ CHÍ MINHChương 1- TTHCM.pptx. SLide giới thiệu về tư tưởng HỒ CHÍ MINH
Chương 1- TTHCM.pptx. SLide giới thiệu về tư tưởng HỒ CHÍ MINH
 
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 TIẾNG ANH I-LEARN SMART START LỚP 3, 4 NĂM HỌC 2023-...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 TIẾNG ANH I-LEARN SMART START LỚP 3, 4 NĂM HỌC 2023-...BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 TIẾNG ANH I-LEARN SMART START LỚP 3, 4 NĂM HỌC 2023-...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 TIẾNG ANH I-LEARN SMART START LỚP 3, 4 NĂM HỌC 2023-...
 
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT HÓA HỌC 2024 - TỪ CÁC TRƯỜNG, TRƯ...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT HÓA HỌC 2024 - TỪ CÁC TRƯỜNG, TRƯ...TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT HÓA HỌC 2024 - TỪ CÁC TRƯỜNG, TRƯ...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT HÓA HỌC 2024 - TỪ CÁC TRƯỜNG, TRƯ...
 
GIÁO ÁN KẾ HOẠCH BÀI DẠY CÔNG NGHỆ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN ...
GIÁO ÁN KẾ HOẠCH BÀI DẠY CÔNG NGHỆ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN ...GIÁO ÁN KẾ HOẠCH BÀI DẠY CÔNG NGHỆ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN ...
GIÁO ÁN KẾ HOẠCH BÀI DẠY CÔNG NGHỆ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN ...
 
CH glucid university of Pham Ngoc Thach- v7.pdf
CH glucid university of Pham Ngoc Thach- v7.pdfCH glucid university of Pham Ngoc Thach- v7.pdf
CH glucid university of Pham Ngoc Thach- v7.pdf
 
Đề ôn thi VIOEDU lớp 2 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)
Đề ôn thi VIOEDU lớp 2 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)Đề ôn thi VIOEDU lớp 2 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)
Đề ôn thi VIOEDU lớp 2 cấp Tỉnh năm 2023 - 2024 (cấp Thành phố)
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 5512 ...
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 5512 ...GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 5512 ...
GIÁO ÁN KẾ HOẠCH BÀI DẠY TOÁN 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 5512 ...
 
trò chơi về môn học tư tưởng hồ chí minh
trò chơi về môn học tư tưởng hồ chí minhtrò chơi về môn học tư tưởng hồ chí minh
trò chơi về môn học tư tưởng hồ chí minh
 
GIẢI-ĐỀ-CƯƠNG-NHẬP-MÔN-KHOA-HỌC-XÃ-HỘI-VÀ-NHÂN-VĂN-KHIÊM-BK69.pdf
GIẢI-ĐỀ-CƯƠNG-NHẬP-MÔN-KHOA-HỌC-XÃ-HỘI-VÀ-NHÂN-VĂN-KHIÊM-BK69.pdfGIẢI-ĐỀ-CƯƠNG-NHẬP-MÔN-KHOA-HỌC-XÃ-HỘI-VÀ-NHÂN-VĂN-KHIÊM-BK69.pdf
GIẢI-ĐỀ-CƯƠNG-NHẬP-MÔN-KHOA-HỌC-XÃ-HỘI-VÀ-NHÂN-VĂN-KHIÊM-BK69.pdf
 
Tài liệu kỹ thuật điều hòa Panasonic - Điện lạnh Bách Khoa
Tài liệu kỹ thuật điều hòa Panasonic - Điện lạnh Bách KhoaTài liệu kỹ thuật điều hòa Panasonic - Điện lạnh Bách Khoa
Tài liệu kỹ thuật điều hòa Panasonic - Điện lạnh Bách Khoa
 
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docxNỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 8 CẢ NĂM - FRIENDS PLUS - BẢN ĐẸP - CÓ FILE NGH...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 8 CẢ NĂM - FRIENDS PLUS - BẢN ĐẸP - CÓ FILE NGH...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 8 CẢ NĂM - FRIENDS PLUS - BẢN ĐẸP - CÓ FILE NGH...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 8 CẢ NĂM - FRIENDS PLUS - BẢN ĐẸP - CÓ FILE NGH...
 
GIÁO ÁN KẾ HOẠCH BÀI DẠY ĐỊA LÍ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 551...
GIÁO ÁN KẾ HOẠCH BÀI DẠY ĐỊA LÍ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 551...GIÁO ÁN KẾ HOẠCH BÀI DẠY ĐỊA LÍ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 551...
GIÁO ÁN KẾ HOẠCH BÀI DẠY ĐỊA LÍ 8 KẾT NỐI TRI THỨC - CẢ NĂM THEO CÔNG VĂN 551...
 

Bai1 gioi thieu_servlet_va_jsp_8952

  • 1. Bài 1. Giới thiệu về Servlet & JSP
  • 2. Nội dung  1. Một số khái niệm  2. Giới thiệu về Servlet và JSP  3. Các bước phát triển và triển khai ứng dụng Web  4. File WAR (Web Application Archive)  5. Cấu hình ứng dụng web  6. Web container 2
  • 3. Web server và client  Số lượng: vô cùng lớn  Mục tiêu:  Xây dựng ứng dụng được truy cập trên toàn cầu 3
  • 4. Web server và client 4
  • 8. HTTP Protocol  Giao thức HTTP chạy trên TCP/IP  TCP: đảm bảo file được từ nút mạng này tới nút mạng khác nguyên vẹn  IP: chịu trách nhiệm định tuyến, dịch chuyển gói tin  Cấu trúc HTTP: chuỗi Request và Response  Browser: request  Server: response 8
  • 9. HTTP Protocol 9  Request:  POST hay GET  Trang request (url)  Tham số  Response  Mã trạng thái  Context type: text, pic..  Nội dung
  • 10. Phương thức GET và POST GET POST Lịch sử, bookmark Tham số hiển thị trên URL, có thể bookmark Tham số không hiển thị trên URL, không thể bookmark Loại dữ liệu Chỉ kí tự ASCII Không giới hạn Giới hạn về độ dài Có, vì độ dài URL có giới hạn, thường 2048 kí tự Không giới hạn Sử dụng Không sử dụng khi gửi thông tin bí mật: password Sử dụng để gửi các thông tin bí mật: passowrd 10 GET: http://phucanh.vn/category-2/laptops.html ?min=10000000&max=12000000
  • 12. Website vs web application 12
  • 13. 2. Giới thiệu về Servlet và JSP  Servlet và JSP: các web component  Cho phép tạo ra các nội dung động 13
  • 14. Web Components & Container  Các web components chạy trên 1 Web container  Các web containers phổ biến: Tomcat và Resin  Web container cung cấp các dịch vụ hệ thống cho các Web components  Request dispatching, security, và quản lý vòng đời 14
  • 15. Web Application & Components  Web Application là 1 gói triển khai, gồm:  Web components (Servlets và JSP)  Tài nguyên tĩnh như images  Helper classes (sử dụng bởi web components)  Thư viện Libraries  Deployment descriptor (web.xml file)  Web Application có thể được tổ chức thành  Phân cấp các thư mục và files (dạng chưa đóng gói - unpacked form) hoặc  *.WAR file: có fân cấp như trên (dạng đóng gói-packed form) 15
  • 17. 3. Các bước phát triển và triển khai ứng dụng Web 17
  • 18. Các bước phát triển và triển khai ứng dụng Web  Viết code (và biên dịch) cho các Web component Servlet/JSP sử dụng trong web component  Tạo các tài nguyên tĩnh (Images, các trang HTML)  Viết file deployment descriptor (web.xml)  Build ứng dụng Web (Tạo file *.war hoặc thư mục dạng chưa đóng gói nhưng triển khai được)  Triển khai ứng dụng Web trên 1 Web container  Web clients có thể truy cập ứng dụng qua URL 18
  • 19. Development Tree Structure  Tạo cấu trúc cây thư mục (Development Tree Structure) cho việc viết ứng dụng web  Thư mục gốc bao gồm:  src: Mã nguồn Java cho các servlets và các JavaBeans  web: các trang JSP, HTML, images  Có thể sử dụng IDE Netbeans để hỗ trợ 19
  • 20. Ví dụ 1: cấu trúc cây project ch1  ch1  src  Ch1Servlet.java  web  WEB-INF  web.xml 20 ch1 websrc WEB-INF web.xml Ch1Servlet .java
  • 21. Ch1Servlet.java import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Ch1Servlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); java.util.Date today = new java.util.Date(); out.println("<html> " + "<body> " + "<h1 align=center>Servlet</h1>" + "<br>" + today + "</body>" + "</html>" ); } } 21
  • 22. web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <servlet> <servlet-name>Chuong 1 Servlet</servlet-name> <servlet-class>Ch1Servlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>Chuong 1 Servlet</servlet-name> <url-pattern>/Serv</url-pattern> </servlet-mapping> </web-app> 22
  • 23. Biên dịch & triển khai trong Netbeans  Biên dịch  Các file được biên dịch thành file .class 23 ch1 web dist WEB-INF web.xml ch1.war build classes Ch1Servlet .class
  • 24. Request từ client  Trên trình duyệt gõ: http://localhost:8084/ch1/Serv 24
  • 25. Cấu trúc triển khai trong Tomcat 25
  • 26. Request từ client  Run Tomcat  Trên trình duyệt gõ http://localhost:8080/ch1/Serv 26
  • 27. Nhận xét  Việc chèn thẻ HTML trong câu lệnh println là dễ dàng?  Giải pháp: JSP <html> <body> <%=new java.util.Date() %> </body> </html>  Ý nghĩa của file web.xml? 27
  • 28. web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <servlet> <servlet-name>Chuong 1 Servlet</servlet-name> <servlet-class>Ch1Servlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>Chuong 1 Servlet</servlet-name> <url-pattern>/Serv</url-pattern> </servlet-mapping> </web-app> 28
  • 29. Ví dụ 2  Ví dụ hello2 trong tutorial của J2EE 1.4  Mục đích:  Tạo 2 servlet có liên kết với nhau  GreetingServlet chuyển yêu cầu tới ResponseServlet  Tài nguyên tĩnh  File đóng gói war  Hiểu hơn về file web.xml 29
  • 31. 31
  • 32. Cấu trúc cây hello2  Hello2  src/servlets  GreetingServlet.java  ResponseServlet.java  web  WEB-INF  web.xml  duke.waving.gif  build.xml 32
  • 33. Cấu trúc sau khi biên dịch  Hello2  src  web  build.xml  build  WEB-INF  classes  GreetingServlet.class  ResponseServlet.class  web.xml  duke.waving.gif 33
  • 34. GreetingServlet String username = request.getParameter("username"); if ((username != null) && (username.length() > 0)) { RequestDispatcher dispatcher = getServletContext() .getRequestDispatcher("/response"); if (dispatcher != null) { dispatcher.include(request, response); } } 34
  • 35. ResponseServlet public class ResponseServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); String username = request.getParameter("username"); if ((username != null) && (username.length() > 0)) { out.println("<h2>Hello, " + username + "!</h2>"); } } 35
  • 37. 4. Web Application Archive (*.WAR) 37
  • 38. Ứng dụng Web  Ứng dụng Web có thể được triển khai ở 2 dạng  Một file *.war  Một thư mục, cấu trúc giống file *.war file (thư mục build)  Sử dụng dạng file *.war khi muốn triển khai trên 1 remote machine 38
  • 39. File *.WAR là gì?  Là gói triển khai được trên web container  Tương tự như file *.jar  Chứa tất cả thành phần cần thiết:  Web components (servlets hoặc JSP)  Các Class tiện ích  Nội dung tĩnh (HTML, image, …)  Các lớp phía Client (applets và các lớp tiện ích)  Có nội dung giống như thư mục build 39
  • 40. Cấu trúc thư mục của 1 file *.WAR 40
  • 41. Cấu trúc thư mục của 1 file *.WAR 41
  • 42. Tạo 1 file *.WAR như thế nào?  3 cách khác nhau:  Sử dụng IDE (NetBeans)  Sử dụng công cụ ant  “asant create-war” (J2EE 1.4 tutorial)  Sử dụng lệnh “jar cvf <filename>.war .” khi ở trong thư mục build 42
  • 43. Ví dụ: Tạo file hello2.war với lệnh “asant create-war” C:j2eetutorial14exampleswebhello2>asant create-war Buildfile: build.xml ... create-war: [echo] Creating the WAR.... [delete] Deleting: C:j2eetutorial14exampleswebhello2assemblewarhello2.war [delete] Deleting directory C:j2eetutorial14exampleswebhello2assemblewarWEB-INF [copy] Copying 1 file to C:j2eetutorial14exampleswebhello2assemblewarWEB-INF [copy] Copying 2 files to C:j2eetutorial14exampleswebhello2assemblewarWEB-INFclasses [war] Building war: C:j2eetutorial14exampleswebhello2assemblewarhello2.war [copy] Copying 1 file to C:j2eetutorial14exampleswebhello2 43
  • 44. Ví dụ: Tạo file hello2.war sử dụng lệnh jar C:j2eetutorial14exampleswebhello2build>jar cvf hello2.war . added manifest adding: duke.waving.gif(in = 1305) (out= 1295)(deflated 0%) adding: servlets/(in = 0) (out= 0)(stored 0%) adding: servlets/GreetingServlet.class(in = 1680) (out= 887)(deflated 47%) adding: servlets/ResponseServlet.class(in = 1090) (out= 572)(deflated 47%) C:j2eetutorial14exampleswebhello2build>jar xvf hello2.war created: META-INF/ extracted: META-INF/MANIFEST.MF extracted: duke.waving.gif created: servlets/ extracted: servlets/GreetingServlet.class extracted: servlets/ResponseServlet.class 44
  • 45. Thư mục WEB-INF  Chứa:  web.xml : Web application deployment descriptor  Các file JSP tag library descriptor  Classes : là thư mục chứa các lớp phía server: servlets, lớp tiện ích, các JavaBeans  lib : là thư mục chứa các file thư viện JAR (tag libraries, các thư viện tiện ích được gọi bởi các lớp phía server) 45
  • 46. 5. Cấu hình ứng dụng Web  Thông số cấu hình được đặc tả trong file web.xml (Web Applications Deployment Descriptor) 46
  • 47. Prolog (web.xml)  Tất cả tài liệu XML cần có prolog <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema- instance" xsi:schemaLocation=http://java.sun.com/xml/n s/javaee http://java.sun.com/xml/ns/javaee/web- app_3_0.xsd version="3.0"> 47
  • 48. Alias Paths (web.xml)  Khi 1 Servlet container nhận 1 request, nó cần biết Web component nào trong ứng dụng Web sẽ xử lý request này.  Thực hiện map URL path trong request tới 1 Web component  Alias Path có thể có 2 dạng  /alias-string (cho servlet) hoặc  /*.jsp (cho JSP) 48
  • 51. 51
  • 52. 52
  • 53. Vai trò của Container  Hỗ trợ giao tiếp giữa servlet và web server  Quản lý vòng đời của các servlet: khởi tạo, gọi, hủy  Hỗ trợ đa tuyến  Cấu hình ứng dụng web dễ dàng qua web.xml  Hỗ trợ dịch các trang JSP 53