1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài 1. Giới thiệu về Servlet & JSP docx

54 521 5

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Giới thiệu về Servlet & JSP
Trường học Trường Đại học Bách Khoa Hà Nội
Chuyên ngành Khoa học máy tính và công nghệ thông tin
Thể loại Bài giảng
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 54
Dung lượng 1,24 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các bước phát triển và triển khai ứng dụng Web  4... 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á

Trang 1

Bài 1 Giới thiệu về

Servlet & JSP

Trang 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

Trang 3

Web server và client

Trang 4

Web server và client

Trang 5

Server làm những gì?

Trang 6

Client làm những gì?

Trang 7

HTML, HTTP protocol

Trang 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

Trang 9

HTTP Protocol

 Request:

 POST hay GET

 Trang request (url)

 Response

 Mã trạng thái

 Context type: text, pic

Trang 10

Phương thức GET và POST

Trang 11

URL

Trang 12

Website vs web application

Trang 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

Trang 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

Trang 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 )

Trang 16

Web Request Handling

Trang 17

3 Các bước phát triển và triển khai ứng dụng Web

Trang 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

Trang 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

Trang 20

Ví dụ 1: cấu trúc cây project ch1

WEB-INF

web.xml Ch1Servlet

.java

Trang 21

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>" );

}

Trang 22

<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>

Trang 23

Biên dịch & triển khai trong Netbeans

Trang 24

Request từ client

 Trên trình duyệt gõ:

http://localhost:8084/ch1/Serv

Trang 25

Cấu trúc triển khai trong Tomcat

Trang 26

Request từ client

 Run Tomcat

 Trên trình duyệt gõ

http://localhost:8080/ch1/Serv

Trang 27

</html>

Ý nghĩa của file web.xml?

Trang 28

<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>

Trang 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

Trang 30

http://localhost:8080/hello2/greeting

Trang 32

Cấu trúc cây hello2

Trang 33

Cấu trúc sau khi biên dịch

Trang 34

String username = request.getParameter("username");

if ((username != null) && (username.length() > 0)) {

RequestDispatcher dispatcher =

getServletContext() getRequestDispatcher("/response");

if (dispatcher != null) {

dispatcher.include(request, response);

}

}

Trang 35

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>");

}

}

Trang 37

4 Web Application Archive

(*.WAR)

Trang 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

Trang 40

Cấu trúc thư mục của 1 file *.WAR

Trang 41

Cấu trúc thư mục của 1 file *.WAR

Trang 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

Trang 43

Ví dụ: Tạo file hello2.war với lệnh “asant create-war”

Trang 44

Ví dụ: Tạo file hello2.war sử dụng lệnh jar

C:\j2eetutorial14\examples\web\hello2\build>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%)

Trang 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)

Trang 46

5 Cấu hình ứng dụng Web

 Thông số cấu hình được đặc tả trong file

Descriptor)

Trang 47

xmlns:xsi="http://www.w3.org/2001/XMLSchema-xsi:schemaLocation=http://java.sun.com/xml/n s/javaee

Trang 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)

Trang 50

6 Web Container

Trang 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

Trang 54

Thảo luận

Ngày đăng: 25/03/2014, 00:21

TỪ KHÓA LIÊN QUAN

w