1. Trang chủ
  2. » Thể loại khác

QUẢN LÝ SESSION. ThS. Phan Thanh Toàn

38 4 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 38
Dung lượng 4,37 MB

Nội dung

BÀI QUẢN LÝ SESSION ThS Phan Thanh Toàn v1.0011109220 TÌNH HUỐNG DẪN NHẬP Nam cần thiết kế Website thương mại cần tạo giỏ hàng cho phép người sử dụng chọn sản phẩm lưu lại thông tin sản phẩm chọn Yêu cầu người sử dụng cần có danh mục sản phẩm riêng rẽ lưu trữ lại suốt phiên làm việc site khách hàng  v1.0011109220 Sử dụng biến để lưu lại danh sách sản phẩm chọn? MỤC TIÊU Trình bày khái niệm session cookie Trình bày cách tạo trì session Trình bày phương pháp theo dõi quản lý session Vận dụng session vào việc lưu trữ liệu trang JSP v1.0011109220 NỘI DUNG v1.0011109220 Giới thiệu Session gì? Các chế thường dùng để theo dõi session Các chế theo dõi session JSP Chu kỳ sống session GIỚI THIỆU • HTTP protocol không trạng thái (stateless protocol), nghĩa server tiếp nhận yêu cầu trả đáp ứng cắt kết nối, không lưu trữ thông tin trạng thái yêu cầu vừa qua Server xử lý độc lập theo yêu cầu từ client • Làm biết user vào Website ta hay chưa? • Làm theo dõi user để không cho phép user truy cập thông tin “nhạy cảm”? → Thông qua session, người phát triển web làm điều v1.0011109220 SESSION LÀ GÌ? • Định nghĩa - Cấu trúc thơng tin session; • Khởi tạo trì session; • Cơ chế quản lý session server v1.0011109220 2.1 ĐỊNH NGHĨA – CẤU TRÚC THÔNG TIN CỦA MỘT SESSION • Session: Chuỗi giao tiếp client riêng biệt với server khoảng thời gian (Mỗi người sử dụng vào thăm website tạo session) • Một session xem đối tượng lưu server cho phép ứng dụng (JSP, servlet) truy xuất giúp truy cập thông tin phiên làm việc client • Một đối tượng session danh sách Trong đó, Key tên khóa (AttributeName) cho thuộc tính session này, Value tham khảo tới đối tượng chứa liệu Key v1.0011109220 2.2 KHỞI TẠO VÀ DUY TRÌ SESSION Một session client khởi tạo (khi user lần đưa request cho Website) nhận diện Session_ID tồn yêu cầu sau thỏa mãn: User khơng đóng browser User khơng log-out khỏi web site Có số giao tiếp user Website Tuy nhiên, user khơng tương tác với Website sau thời khoảng (thường 30 phút - admin ấn định bên server) session bị đóng v1.0011109220 2.3 CƠ CHẾ QUẢN LÝ SESSION TRONG SERVER Server có bảng băm (hash table) mức cao chứa entry cặp với Key=session_ID cho tất các session hành Mỗi Value lại tới bảng băm quản lý đối tượng session cho client Key Session_ID1 Session_ID2 Session_ID3 … … Session_IDn Value Key_1 Key_2 Key_3 … … Key_n Bảng quản lý session Key Key_11 Key_12 Key_13 … … Key_1n Value Object 11 Object 12 Object 13 … … Object 1n Bảng quản lý session cho client Chú ý: • Session ID server tạo thay đổi tùy thuộc server, người lập trình ứng dụng khơng thể tạo Session_ID • Mỗi session có ánh xạ 1-1 client server Một client truy xuất nhiều tài nguyên từ server có đối tượng session đối tượng session dùng chung cho tài nguyên mà client truy xuất v1.0011109220 CÂU HỎI THẢO LUẬN Session gì? v1.0011109220 10 CÁC CƠ CHẾ THEO DÕI SESSION TRONG JSP (tiếp theo) String encodeRedirectURL(String url) – mã hóa url để dùng method sendRedirect Nếu không cần mã hóa trả url String encodeURL(String url) – mã hóa url cách thêm vào session ID vào url Nếu khơng cần mã hóa trả url • Khi user di chuyển trang, session ID thêm vào chuỗi URL Nghĩa là, phải tạo session gửi session ID cho servlet response đóng gói theo kỹ thuật URL rewriting Khi user khởi tạo request, lại phải trích xuất session ID tham số query string sử dụng ID • Ví dụ sau minh họa việc sử dụng session để truyền thông tin hai trang: trang ExampleOfSession_URL_1.JSP khởi tạo session trang ExampleOfSession_URL_2.JSP lấy thông tin session v1.0011109220 24 CÁC CƠ CHẾ THEO DÕI SESSION TRONG JSP (tiếp theo) • Trang ExampleOfSession_URL_1.JSP: • Trang ExampleOfSession_URL_21.JSP: v1.0011109220 25

Ngày đăng: 07/04/2022, 19:38

HÌNH ẢNH LIÊN QUAN

Server có một bảng băm (hash table) ở mức cao nhất chứa các entry là các cặp <Key, Value>vớiKey=session_ID chotấtcác các sessionhiệnhành.MỗiValuelại chỉ tới một bảng băm quảnlýmột đối tượngsession chomộtclient. - QUẢN LÝ SESSION. ThS. Phan Thanh Toàn
erver có một bảng băm (hash table) ở mức cao nhất chứa các entry là các cặp <Key, Value>vớiKey=session_ID chotấtcác các sessionhiệnhành.MỗiValuelại chỉ tới một bảng băm quảnlýmột đối tượngsession chomộtclient (Trang 9)
w