標籤:ring response tchar 介面 pre ram 中間 ima blog
動態網頁面,說白了,就是根據一定的資訊(條件)去改變呈現給使用者的內容。
而這裡所提到的一定的資訊,通常就是指,在一個表單中使用者所輸入的資訊。
先來看一個我們常見的使用者登入介面吧。
在這裡我們可以看到一共有三個頁面,登入介面、登入成功介面、登入失敗介面。
但是,實際上為了實現登入介面向兩個分支進行跳轉,這中間還會有一個空文本的檔案,為頁面的
跳轉提供一個方向(判斷)。
商務邏輯:
首先4個頁面,demo.html(登入介面)、login.jsp(判斷)、login_success.jsp(成功介面)、login_failure.jsp
(失敗介面)。
登入介面的表單action屬性指向login.jsp,使用者點擊提交(登入)按鈕之後,向伺服器發出請求(request)
login.jsp收到了請求,然後就開始分析:
1 <%@ page language="java" contentType="text/html; charset=utf-8" 2 pageEncoding="utf-8"%> 3 <% 4 request.setCharacterEncoding("UTF-8"); 5 String username= request.getParameter("username");//擷取username值 6 String password = request.getParameter("password");//擷取password值 7 if("admin".equals(username)&&"admin".equals(password)){ 8 session.setAttribute("username", username);//在會話中保留username值供之後的頁面調用 9 request.getRequestDispatcher("login_success.jsp").forward(request, response);//請求轉寄10 }else{11 response.sendRedirect("login_failure.jsp");//重新導向請求12 }13 %>
這個會話就是指從你登入到登出為一次會話,時間長了會話會失效,這就是為什麼登入一個網站之後,瀏覽了那麼
多頁面還是登入狀態,而時間長了之後(預設是30min)就掉線了。
java之jsp實現動態網頁