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

CHUYÊN đề JAVA SERVLET SESSION TRACKING

18 473 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 18
Dung lượng 1,97 MB

Nội dung

CHUYÊN ĐỀ JAVA SERVLET SESSION TRACKING • Lâm Thị Xuân Thanh • Đỗ Xuân Thiện • Lê Hữu Thống Nội dung trình bày  Session Tracking  Cài đặt Session Tracking - Servlet Session API  Xây dựng BookOnline - Đăng nhập - Quản lý giỏ hàng Session Tracking  Trong ứng dụng bán hàng trực tuyến, nhiều khách hàng thực mua hàng Mỗi khách hàng có giỏ hàng riêng biệt  Mỗi khách hàng thực thao tác thêm sản phẩm vào giỏ hàng, xóa sản phẩm khỏi giỏ hàng, cập nhật số lượng mua, tiếp tục mua hàng, toán…  Để thực thao tác khách hàng server biết sản phẩm có giỏ hàng khách hàng đó? Session Tracking  Cần chế trì trạng thái request từ người dùng(hoặc có nguồn gốc browser) khoảng thời gian  Tuy nhiên HTTP giao thức phi trạng thái (stateless) - Mỗi lần client kết nối đến server mở kết nối - Server không tự động trì trạng thái user Session Tracking Session ID Session Client Server Session ID Session Client Session Tracking  Cài đặt Session Tracking sử dụng - Servlet Session API Session Tracking - Servlet Session API  Lấy đối tượng session HttpSession session = request.getSession();  Lấy liệu: Object obj = session.getAttribute(String name); session.setAttribute(String name, Object obj)  Lưu trữ liệu vào session  Xóa liệu session theo tên session.removeAttribute(String name)  Xóa toàn liệu session : session.invalidate()  Kiểm tra session tạo từ client: boolean ok = session.isNew() Session Tracking - Servlet Session API  Lấy session id: String id = session.getId()  Lấy tên thuộc tính từ session Enumeration names = session.getAttributeNames() longtạotime = lần  Lấy thời gian session session.getCreationTime(); time long Lấy thời gian= truy xuất session lần cuối session.getLastAccessedTime(); session.setMaxInactiveInterval(int interval);  Gán/lấy thời gian session timeout int interval = session.getMaxInactiveInterval(); Session Tracking - Servlet Session API 10 11 12 13 14 15 16 17 18 19 //Lưu trữ liệu HttpSession session = request.getSession(); SomePOJO data= ; session.setAttribute("SomeName", data); //Lấy liệu HttpSession session = request.getSession(); if(session.getAttribute(“SomeName”)!=null){ SomePOJO data = (SomePOJO)session.getAttribute(“SomeName”); } //Xóa liệu HttpSession session = request.getSession(); session.removeAttribute(“SomeName”); //Xóa tất liệu session HttpSession session = request.getSession(); session.invalidate(); Session Tracking - Servlet Session API HttpSession session = request.getSession(); synchronized (session){ session.setAttribute( ); session.getAttribute( ); session.removeAttribte( ); session.invalidate( ); } - Synchronized : xử lý đồng request đến từ user - Thường sử dụng ứng dụng ajax 10 Servlet Session API - Access Count 10 11 12 13 14 15 16 17 18 19 11 HttpSession session = request.getSession(); synchronized (session) { Integer accessCount; if (session.getAttribute("AccessCount") != null) { accessCount = (Integer) session.getAttribute("AccessCount") + 1; } else { accessCount = 1; } session.setAttribute("AccessCount", accessCount); out.println(""); out.println(""); out.println(""); out.println("Show Session"); out.println(""); out.println(""); out.println("THÔNG TIN SESSION"); Servlet Session API - Access Count 10 11 12 13 14 15 16 17 18 19 12 out.println(""); out.println(" "); out.println(" Thông tin"); out.println(" Giá tr?"); out.println(" "); out.println(" "); out.println(" ID"); out.println(" " + session.getId() + ""); out.println(" "); out.println(" "); out.println(" Thời gian tạo lần đầu tiên"); out.println(" " + new Date(session.getCreationTime()) + ""); out.println(" "); out.println(" "); out.println(" Thời gian truy cập lần cuối "); out.println(" " + new Date(session.getLastAccessedTime()) + ""); out.println(" "); Servlet Session API - Access Count out.println(" "); Thời gian timeout"); out.println(" out.println(" " + session.getMaxInactiveInterval() + ""); out.println(" "); out.println(" "); out.println(" Số lần truy cập"); out.println(" " +accessCount + "" ) 10 11 "); out.println(" 12 out.println(""); 13 out.println(""); 14 15 out.println(""); 16 out.println(""); 13 Servlet Session API - Access Count 14 BookOnline - Các chức  Cho phép khách hàng quản lý giỏ hàng - Xem giỏ hàng - Thêm sách vào giỏ hàng - Xóa số đầu sách giỏ - Cập nhật số lượng sách mua - Xóa tất sách giỏ - Thanh toán giỏ hàng - Xem đơn đặt hàng mua 15 BookOnline - Use case DuaSachVaoGioHang KhachHang XoaMotSoDauSachKhoiGioHang XemDanhSachDonDatHang XemChiTietDonDatHang 16 XemGioHang CapNhatSoLuongSach TrongGioHang ThanhToan BookOnline - Cơ sở liệu 17 THE END 18 [...].. .Servlet Session API - Access Count 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 11 HttpSession session = request.getSession(); synchronized (session) { Integer accessCount; if (session. getAttribute("AccessCount") != null) { accessCount = (Integer) session. getAttribute("AccessCount") + 1; } else { accessCount = 1; } session. setAttribute("AccessCount", accessCount);... out.println(""); out.println(""); out.println("Show Session"); out.println(""); out.println(""); out.println("THÔNG TIN SESSION"); Servlet Session API - Access Count 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 12 out.println("

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

TỪ KHÓA LIÊN QUAN

w