1. 程式人生 > >慕課 servlet課堂筆記(二)

慕課 servlet課堂筆記(二)

Servlet與JSP內建物件的對應關係

Servlet與表單

  • 實體類的屬性名與使用者登錄檔單標籤中的name一致
  • 表單提交的action 寫成包名/類名(servlet的)
  • 修改doget和dopost(丟擲異常)
  • dopost中屬性型別和屬性名與實體類保持一致
    • 常見資料型別username=request.getParameter("username");
    • Date型別 : SimplieDateFormat sdf=newSimpleDateFormat("yyyy年xx月zz日")

birthday=sdf.parse(request.getParameter("birthday"));

  • 獲取多個複選按鈕的值:requet.getParamenterValues("複選")
    • 實體類中
      • 封裝欄位,get,set方法
      • 保留不帶引數的構造方法
    • dopost中
      • 封裝屬性到實體類中
      • 報註冊成功的使用者物件儲存在session中
        • request.getSession().setAttribute("regUser",u(例項類的例項));
      • 頁面跳轉(伺服器內部跳轉)
        • request.getRequestDispatcher("xxx.jsp").forward(request)
    • jsp中
      • <jsp:usebean id="regUser" class="entito.Users" scope="session">
      • 在jsp表單對應額單元格中每一個加入<jsp:getProperty name="regUser" property="name">
        • 日期
        • 複選框  

Servlet路徑跳轉

  • jsp檔案中
    • 相對路徑
      • ❗</servlet/helloServlet> 第一個/表示伺服器根目錄
    • 絕對路徑
      • <a href="<%=path%>/servlet/helloServlet"> path表示專案的根目錄
  • 配置文件中
    • 注意路徑正確 <url-pattern> </servlet/helloServlet> √ /表示專案根目錄
  • servlet檔案中
    • ❗response.sendRedirect("test.jsp")//404,這個在當前路徑尋找該檔案
    • 獲得上下文response.sendRedirect(request.getContextPath()+"test.jsp");
    • 伺服器內部轉:request.getRequestDispatcher("/test.jsp").forward("request")