1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Chuyên đề J2EE nâng cao tuần 2

14 487 0

Đ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

Định dạng
Số trang 14
Dung lượng 709,06 KB

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

Nội dung

Servlet là một công nghệ của Java được chạy trên máy chủserver dùng để xử lý các yêu cầu từ client.. Công việc Servlet thực hiện:  Đọc c c dữ liệu tường minh hoặc không tường minh được

Trang 1

CHUYÊN ĐỀ J2EE NÂNG CAO BÀI TẬP THỰC HÀNH TUẦN 2

JSP & SERVLET

Nội dung

Phần 1 :Lý thuyết .2

1 JSP syntax .2

2 Servlet .3

Phần 2: Thực hành .8

1 Hướng dẫn .8

2 i t p p d ng: 13

Trang 2

Phần 1 : Lý thuyết

1 JSP syntax

- Khai báo code java trong nội dung HTML

<% codejava%>

- Khai báo biến & phương thức: <%! %>

<%! int count = 0; %>

<%! String des = “Increase count var” ; %>

- Kết xuất giá trị đối tượng: <%= %>

<%= ++count %>

- Khai b o thư viện: <%@ page %>

<%@ page import = “java.sql.*, java.util.*” %>

- Nhúng file:

<%@ include file=“filename” %>

- Chuyển hướng các giữa các trang jsp

<jsp:forward page="./loginOK.jsp"></jsp:forward>

- Tạo các lớp đối tượng java

<jsp:useBean id = “test” class=“SimpleBean” />

<%!public class SimpleBean { private String msg = “No Message”;

public String getMessage(String msg) {

return (msg);

} public void setMessage(String msg) {

this.msg = msg;

} }

%>

Gọi một phương thức n o đó của Bean:

<jsp:useBean id="test" class="MyBeans.SimpleBean"/>

<jsp:setProperty name = “test” property = “msg”

value = “hello class” />

Trang 3

2 Servlet

Servlet là một công nghệ của Java được chạy trên máy chủ(server) dùng để xử

lý các yêu cầu từ client Servlet “giống như một tầng liên lạc” giữa các request từ Web browser hoặc HTTP client và databases hoặc ứng d ng trên HTTP server

Kiến trúc

Công việc Servlet thực hiện:

 Đọc c c dữ liệu tường minh hoặc không tường minh được Client gửi đến

 Xử lý v lưu trữ c c dữ liệu được cung cấp dưới dạng HTML

 Gửi trả lời dữ liệu tường minh cho Client (dạng HTML), cung cấp c c nội dung động, ví d trả lời yêu cầu Client về c c câu truy vấn v o c c CSDL…

Trang 4

Servlet API

API

- Gói javax.servlet chứa c c lớp v c c giao diện được kế thừa giao diện

Servlet một c ch độc l p

- Gói javax.servlet.http chứa c c lớp v giao diện HTTP c thể

Servlets có thể implements Servlet Interface hoặc kế thừa ( extends) lớp đã implemented Servlet Interface như GenericServlet & HttpServlet

Trang 5

- Phương thức doGet(),doGet() có hai tham số đối tượng thuộc hai lớp

HttpServletRequest v HttpServletResponse Hai đối tượng này cho phép chúng ta truy c p đầy đủ tất cả các thông tin yêu cầu và cho phép gửi dữ liệu kết quả cho Client

 HttpServletRequest cho phép nh n các tham số m Client gửi đến thông qua

c c phương thức getParameterName(), getParameterValue() để x c định tên gọi v gi trị của c c tham số

 HttpServletResponse cung cấp hai phương thức để trả lại kết quả cho Client Phương thức getWriter() ghi dữ liệu dưới dạng văn bản còn

getOutputStream() cho lại dữ liệu dạng nhị phân

C c dạng exception:

Trang 6

Life Cycle của Servlet

- Phương thức init() có một thuộc tính l đối tượng của ServletConfig, và

Servlet có thể đọc c c đối số khởi tạo của nó thông qua đối tượng

ServletConfig Được dùng thực hiện các công việc như gọi resource, tạo kết nối database Server chỉ gọi init() một lần khi nạp Servlet v sau đó sẽ không gọi lại nữa, trừ khi phải nạp lại nó

- Service dùng để xử lý request Mỗi khi server nh n được request đến servlet thì sẽ tạo một luồng (thread ) và gọi Service C c phương thức của Service

sẽ kiểm tra loại request ((GET, POST, PUT, DELETE, ) để gọi các hàm tương ứng doGet, doPost, doPut, … Phương thức n y được gọi để xử lý các yêu cầu Nó có thể không được gọi, gọi một lần hay nhiều lần cho đến khi Servlet được ngưng tải

- destroy() : Phương thức này chỉ được gọi một lần trước khi Servlet được ngưng tải v sau khi đã kết thúc các dịch v

Trang 7

Ví dụ về servlet :

- Trả về một text:

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class HelloWorld extends HttpServlet {

public void doGet(HttpServletRequest request,

HttpServletResponse response)

throws ServletException, IOException {

PrintWriter out = response.getWriter();

out.println("Hello World");

}

}

- Trả về một nội dung HTML

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class HelloWWW extends HttpServlet {

public void doGet(HttpServletRequest request,

HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html");

PrintWriter out = response.getWriter();

out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 "

+

"Transitional//EN\">\n" +

"<HTML>\n" +

"<HEAD><TITLE>Hello WWW</TITLE></HEAD>\n" +

"<BODY>\n" +

"<H1>Hello WWW</H1>\n" +

"</BODY></HTML>");

}

}

Trang 8

Phần 2: Thực hành

1 Hướng dẫn

1.1 Chạy Servlet HelloWorld trên

B1 Tạo web application như b i hướng dẫn tuần 1

B2 Tạo Servlet HelloWorld có code như trong 2 trường hợp trên

1.2 LoginServlet

Tạo một web application (xem b i t p tuần 1)

2: Tạo Servlet có tên l LoginServlet

Trang 10

File LoginServlet.java được tạo ra trong default pakage

- Servlet được tạo ra gồm:

protected void processRequest(HttpServletRequest request,

HttpServletResponse response) throws ServletException, IOException { … }

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException

{ … }

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException

{ … }

public String getServletInfo()

{ … }

}

Trong index.jsp, c i đặt form đăng nh p với username v password v action gọi tới LoginServlet

Trang 11

Thêm đoạn code sau:

Cách 1:

Trang 12

Cách 2:

Trang 13

- Chạy v xem kết quả

- Nếu chạy cả 2 h m trên thì h m n o được chạy, giải thích?

2 ậ :

Viết chương trình tính to n 2 số với c c phép tính như m n hình sau

Trang 14

Xử lý button ack v Close b ng c ch dùng javascript có dạng

http://sites.google.com/site/tinhuynhuit/courses/develop-enterprise-application-with-jee

Ngày đăng: 31/08/2016, 09:54

TỪ KHÓA LIÊN QUAN

w