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

Servers and Applets + Form ppsx

34 277 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 34
Dung lượng 781,94 KB

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

Nội dung

HTTP Tunneling Template: Client SideURL currentPage = getCodeBase; String protocol = currentPage.getProtocol; String host = currentPage.getHost; int port = currentPage.getPort; String ur

Trang 1

Servers and Applets

+ FormGV: Vũ Đình Hồng Khoa: CNTT – TỨD

Trang 2

results within the applet (HTTP tunneling)

Trang 3

Giao thức Get và Kết quả

Trang 4

{

try

{

SearchSpec spec = commonSpecs[i];

URL searchURL = new URL(spec.makeURL(query, "10"));

String frameName = "results" + i;

Trang 5

Ví dụ:Utility Class

public class SearchSpec

{

private String name, baseURL, numResultsSuffix;

private static SearchSpec[] commonSpecs = { new

SearchSpec(“google”,”http://www.google.com/search?q=“, ”&num=“),…};

public String makeURL (String searchString, String

Trang 6

<FRAME SRC="GoogleResultsFrame.html" NAME="results0" >

<FRAME SRC="InfoseekResultsFrame.html" NAME="results1" >

<FRAME SRC="LycosResultsFrame.html" NAME="results2" >

</FRAMESET>

</FRAMESET>

Trang 7

Get Request: Initial Result

Trang 9

HTTP Tunneling and GET Requests

• Tạo 1 đối tượng đề cập đến URL máy chủ của applet

URL dataURL = new URL(…);

• Tạo 1 đối tương URLConnection

URLConnection connection = DataURL.openConnection();

• Hướng dẫn các trình duyệt không lưu các dữ liệu URL

connection.setUseCaches(false);

• Thiết lập bất kì các tiêu đề HTML mong muốn

• Thiết lập các luồng dữ liệu đầu vào

– Gọi connection.getInputStream; bao bọc bởi các luông cấp cao hơn

• Đọc dữ liệu được gửi từ server

– Ví dụ, gọi readLine trên BufferedReader

• Đóng các luồng dữ liệu đầu vào

Trang 10

HTTP Tunneling Template: Client Side

URL currentPage = getCodeBase();

String protocol = currentPage.getProtocol();

String host = currentPage.getHost();

int port = currentPage.getPort();

String urlSuffix = "/servlet/SomeServlet";

URL dataURL = new URL(protocol, host, port, urlSuffix);

URLConnection connection = dataURL.getConnection();

Trang 11

Using Object Serialization

with HTTP Tunneling

• Ý tưởng

– Chương trình phía Server (servlet) gửi 1 đối tượng java

– Chương trình phía Client (applet) đọc nó

• Chương trình mẫu phía Client

Trang 12

Ví dụ: Live Scrolling Data

Trang 13

Sending Post Data to

Server

• Applet gửi yêu cầu đến máy chủ

• Quá trình phản hồi trực tiếp

Url currentPage = getCodeBase() ;

String protocol =

currentPage.getProtocol() ;

String host = currentPage.getHost() ;

Int port = currentPage.getPort() ;

String urlSuffix = « /servlet/Somservlet » ;URL dataURL = new URL(protocol, host, port, urlSuffix) ;

Trang 14

Sending Post Data to

Server

• Quá trình phản hồi trực tiếp(tt)

URLConnection connection =

dataURL.openConnection () ;Connection.setUseCaches(false) ;

Connection.setDoOutput(true);

• Kiểu ký tự và kiểu nhị phân

ByteArrayOutputStream byteStream = new ByteArrayOutputStream(512);

Trang 15

Sending Post Data to

Server

• Kiểu ký tự và kiểu nhị phân (tt)

PrintWriter out = new

PrintWriter(byteStream, true);

Out.Print(data) ; Out.flush() ;

Connection.setRequestProperty(« Cont ent-Length »,

String.valueOf(byteStream.size())) ;

Connection.setRequestProperty(« Cont ent-Type », « application/x-www-form- urlencoded  ») ;

Trang 16

Sending Post Data to

Trang 17

Sending Post Data to

Type », «

byteStream writeTo (connection.getOutputStrea m()) ;

Trang 18

Sending Post Data to

Server

• Gửi dữ liệu đến Servlet sẽ được trả về một trang web HTML sẽ hiển thị form dữ liệu mà nó đã nhận được

Trang 19

Sending Post Data to Server

Trang 20

Bypassing the HTTP

server

• Nếu bạn đang sử dụng applet thì bạn không cần phải thông qua giao thức của http

– JDBC (Java Db Connectivity)

– RMI

– SOAP (perhap via Jax-RPC)

– Raw sockets

Trang 21

– Bắt buộc giao tiếp với server từ đó applet

sẽ được tải lên

– Bắt buộc hạn chế chế độ tường lửa

– Cần phải chạy thêm một máy chủ khác

Trang 22

Ghi Chú

• Truyền dữ liệu qua Get and

showDocument

– Có thể truy cập ở bất cứ url nào

– Dùng trình duyệt để xem kết quả

• Truyền dữ liệu qua Get and

Trang 23

• Truyền dữ liệu với Post and

UrlConnection

Trang 26

• NAME (required), VALUE, SIZE,

MAXLENGTH, DISABLED, READONLY, ONCHANGE, ONSELECT, ONFOCUS,

ONBLUR, ONKEYDOWN, ONKEYPRESS, ONKEYUP

Trang 27

• NAME (required), VALUE, SIZE,

MAXLENGTH, DISABLED, READONLY, ONCHANGE, ONSELECT, ONFOCUS,

ONBLUR, ONKEYDOWN, ONKEYPRESS, ONKEYUP

Trang 28

• NAME (required), ROWS (required),

COLS (required), WRAP (nonstandard), DISABLED, READONLY, ONCHANGE,

ONSELECT, ONFOCUS, ONBLUR,

ONKEYDOWN, ONKEYPRESS, ONKEYUP

Trang 31

Check Boxes

• HTML Element:

• <INPUT TYPE="CHECKBOX" id=" " > (No End Tag)

• Attributes: NAME (required), VALUE,

CHECKED, DISABLED, READONLY,

ONCLICK, ONFOCUS, ONBLUR

Trang 32

Radio Buttons

• HTML Element:

• <INPUT TYPE="RADIO" id=" "

VALUE=" " > (No End Tag)

• Attributes:

• NAME (required), VALUE (required), CHECKED, DISABLED, READONLY, ONCLICK, ONFOCUS, ONBLUR

Trang 34

Q & A

Ngày đăng: 07/08/2014, 15:21

TỪ KHÓA LIÊN QUAN

w